java读取本地txt 两种方式_java读取本地txt文件

java读取本地txt文件内容

假设需要读取如下内容的文件,中间用\t(制表符)来分割

--ID 数据

150721352021315

1507312172226274

1507447212526298

15075611131921324

1507619101923279

1507716810132716

1507837202226292

150799141520263211

150801417252728302

1508113202226283113

150822891428307

1508367161829325

1508415182022282915

1508528252728295

--开头的自动忽略,返回一个每行为一个String[]的ArrayList集合

使用text.get(0)[0]来获取目标字段

package tool;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.InputStreamReader;

import java.util.ArrayList;

public class ReadTextByFile {

/** Java读取txt文件的内容,--开头的自动忽略,返回一个每行为一个String[]的ArrayList集合

* @param filePath 文件路径

* @param encoding 编码格式

* @return 每行为一个String[]的ArrayList集合

*/

public static ArrayList readTxtFile(String filePath,String encoding) {

ArrayList res = new ArrayList();

try {

File file = new File(filePath);

if (file.isFile() && file.exists()) { // 判断文件是否存在

InputStreamReader read = new InputStreamReader(

new FileInputStream(file), encoding);// 编码格式必须和文件的一致

BufferedReader bufferedReader = new BufferedReader(read);

String lineTxt = null;

while ((lineTxt = bufferedReader.readLine()) != null) {

if (!lineTxt.startsWith("--")) {

res.add(lineTxt.split("\t"));

}

}

read.close();

} else {

System.out.println("指定的文件不存在");

}

} catch (Exception e) {

System.out.println("读取文件内容出错");

e.printStackTrace();

}

return res;

}

public static void main(String argv[]) {

String filePath = "d:\\his.txt";

ArrayList text=new ArrayList();

text=readTxtFile(filePath,"utf-8");

System.out.println(text.get(0)[0]);

}

}

你可能感兴趣的:(java读取本地txt,两种方式)