Java读取txt文件、excel文件的方法

1.读取txt文件

 public static String getFileContent(String filePath,String charset){//filePath为文件路径,charset为字符编码。通常使用UTF-8File file = new File(filePath);BufferedReader reader = null;String tempString = null;int line =1;StringBuffer str = new StringBuffer();try {log.error("以行为单位读取文件内容,一次读一整行:");InputStreamReader isr = new InputStreamReader(new FileInputStream(file), charset);  reader = new BufferedReader(isr);while ((tempString = reader.readLine()) != null) {//log.info("Line"+ line + ":" +tempString);str.append(tempString + "\r\n");line ++ ;}reader.close();} catch (FileNotFoundException e) {log.error("文件不存在:",e);} catch (IOException e) {// TODO Auto-generated catch blocklog.error("文件读取异常:",e);}finally{if(reader != null){try {reader.close();} catch (IOException e) {log.error("文件读取异常:",e);}}}System.out.println(str.toString());return str.toString();}

读取的数据为一行一行的字符串,可以使用String接收,使用split切分,获取自己需要的数据,举例如下:

String response = FileHelper.getFileContent(fileUrl,"UTF-8");if(!StringUtil.isEmptyStr(response)){String[] sz = response.split("\\n");Map<String,Object> statementMap = null;List<Map<String,Object>> statementList = new ArrayList<Map<String,Object>>();for (int i = 0; i < sz.length; i++){statementMap = new HashMap<String,Object>();String[] statement = sz[i].split("\\|\\|\\|",-1);String account = statement[0];String figer = statement[1];String number = statement[2];String proName = statement[3];String expTime = statement[4];statementMap.put("account", account);statementMap.put("figer", figer);statementMap.put("number", number);statementMap.put("proName", proName);statementMap.put("expTime", expTime);statementList.add(statementMap);}resultMap.put("list", statementList);

2.读取excel文件

   /** 获取excel某列数据方法*/public static List<String> readExcel(String filePath){File file = new File(filePath);List<String> headList = new ArrayList<>();InputStream in = null;try {in = new FileInputStream(file);XSSFWorkbook wb = new XSSFWorkbook(in);XSSFSheet sheet = wb.getSheetAt(0); //获取第一张工作表int firstRowNum = sheet.getFirstRowNum();int lastRowNum = sheet.getLastRowNum();XSSFRow row = sheet.getRow(sheet.getFirstRowNum());//判断表行是否为空if (null == row){//表空,直接返回return headList;}for (int i = firstRowNum + 1; i <= lastRowNum; i++) {//遍历行,第一行为表头,跳过row = sheet.getRow(i);XSSFCell cell = row.getCell(0);//取每行的第一列数据,可根据需要修改或者遍历if (StrHelper.isNotEmpty(cell.getStringCellValue().trim())){headList.add(cell.getStringCellValue().trim());System.out.println(cell.getStringCellValue().trim());}}in.close();} catch (Exception e) {e.printStackTrace();} finally{try {if(in != null){in.close();}} catch (IOException e) {e.printStackTrace();}}return headList;}

读取的数据为String数组,可以使用List接收,获取自己需要的数据,举例如下:

List<String> response = FileHelper.readExcel(fileUrl);

Java读取txt文件、excel文件的方法相关推荐

  1. java读取txt写入excel,java中对txt和excel的读取和写入

    txt工具类: package com.rj.bd.xm; import java.io.BufferedReader; import java.io.BufferedWriter; import j ...

  2. java读取大txt文件_使用java读取txt里边的文件内容并获取大小(M).txt

    package com; import java.io.File; import java.io.*; import java.io.FileInputStream; import java.io.F ...

  3. java读取TXT文件的方法

    java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路 ...

  4. java中mypoiexception_Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案...

    注意:此参考解决方案只是针对xlsx格式的excel文件! 背景 前一段时间遇到一种情况,服务器经常宕机,而且没有规律性,查看GC日志发生了out of memory,是堆溢出导致的,分析了一下堆的d ...

  5. JNI开发笔记(八)--Java读取txt文件进行JNI测试

    Java读取txt文件进行JNI测试 引 前言 1. 新建assets文件夹 2. 载入测试文件 3. 建立文件读取方法 4. 在MainActivity中读取文件数据 引 JNI开发笔记(一)–An ...

  6. java读取txt文件乱码解决方案

    因为txt默认的选项是ANSI,即GBK编码.GBK和GB2312都是中文编码,在这里解释一下两者的区别. 总体说来,GBK包括所有的汉字,包括简体和繁体.而gb2312则只包括简体汉字. GBK: ...

  7. java 读excel 流_Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案...

    原文:https://www.cnblogs.com/cksvsaaa/p/7280261.html 注意:此参考解决方案只是针对xlsx格式的excel文件! 背景 前一段时间遇到一种情况,服务器经 ...

  8. java操作office和pdf文件java读取word,excel和pdf文档内容

    在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...

  9. java 读取txt文件和xls文件

    ①:java读取txt文件 首先声明一下,我此处所涉及的文件读取只是简单的读取以及自己的一些见解.如有错误,还请提点 package test;import java.io.BufferedReade ...

最新文章

  1. python学习方向-Python方向(转载)
  2. Git操作,有时候会遇到“git did not exit cleanly (exit code 128)”错误
  3. openGauss训练营第二期结营!一百个QA和PPT合辑大放送!随附105人结营学员名单...
  4. 【Flink on k8s】JConsole 远程监控 TaskManager
  5. linux命令输入错误怎么弄,Bash-Insulter:一个在输入错误命令时嘲讽用户的脚本 | Linux 中国...
  6. mysql图片数据类型_Mysql数据类型简介(大概了解)
  7. excel辅助列巧妙运用完成工资条的制作
  8. c++数组排序_为什么?为什么?Java处理排序后的数组比没有排序的快?想过没有?
  9. Win系统 - 尚未安装,.NET Framework 4,原因是:HRESULT 0x80240037
  10. ubnt+ros 接入无线
  11. SIGIR 2022 | 港大等提出超图对比学习在推荐系统中的应用
  12. JSR规范系列(1)——Java版本、JSR规范和JCP社区流程概述
  13. Glide之GlideModule
  14. 发邮件时提示连接服务器失败,发送邮件时经常出现发送失败或是连接超时什么原因...
  15. 美容行业小程序的价值好处
  16. seleniumbase学习总结4 - 运行测试用例
  17. 移动H5前端性能优化指南(转自ISUX)
  18. h5页面调用cmd命令并隐藏cmd弹窗
  19. Android系统在超级终端下必会的命令大全
  20. 天天写日记争当文艺青年 2014-5-15

热门文章

  1. UOS安装向日葵远程
  2. win10开始菜单、任务栏等右键无反应解决办法
  3. Ubuntu+KVM+Openstack搭建私有云平台
  4. 中级人力资源管理师和中级经济师(人资方向)有什么区别?
  5. java 谷歌身份验证器
  6. 华为 WATCH GT 3跑步分段功能怎么用?
  7. 专访| 达摩院视觉黑科技创造者华先胜
  8. cocos creator小程序改变横屏竖屏
  9. 利用Python打造一个语音合成系统
  10. c语言中因式分解的题目,因式分解练习题加答案解析-200道.doc