java_method_readFile读取文件文本txt

时间:2023-03-09 20:56:13
java_method_readFile读取文件文本txt
/**
* @Title: TxtAndCsvUtils.java
* @Package cn.com.qmhd.tools
* @Description: TODO(读取txt和CSV文档)
* @author CLL
* @date 2014-11-29 下午01:27:26
* @version V1.0
*/
package cn.com.qmhd.tools; import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List; public class TxtAndCsvUtils { /**
* 读取txt或者csv文件
* @param filePath 文件路径
* @param colums 每行数据字段长度
* @param regex 切割字符串标识
* @return
*/
public List<String[]> read(String filePath,String regex)
{
List<String[]> list=new ArrayList<String[]>();
try
{
File file=new File(filePath);
FileInputStream in=new FileInputStream(file);
InputStreamReader read=new InputStreamReader(in,"GBK");//ANSI 可以不转码或者用GBK转码,其他需要相应格式转码
BufferedReader buffer=new BufferedReader(read);
String lineTxt="";
String[] item=null;
while((lineTxt=buffer.readLine())!=null)
{
//去除所有空白格
lineTxt=lineTxt.replaceAll("\\s*", "");
//如果不是空白行写入list之中
if(!lineTxt.isEmpty())
{
item=lineTxt.split(regex);
if(item!=null&&item.length>0){
list.add(item);
}
}
item=null;
}
buffer.close(); return list; }
catch(Exception e)
{
ExceptionHeading.getException(this.getClass().getName(), e, "读取文件发生异常");
e.printStackTrace();
}
return null;
} }