FILEUTILS补足了JAVA读写文件的弱势,其用法如下:
1. 读取文件
1)如果是按行分隔的文件,可以用行迭代器:
LineIterator it = FileUtils.lineIterator(file, "UTF-8"); try { while (it.hasNext()) { String line = it.nextLine(); /// 进行处理 } } finally { LineIterator.closeQuietly(iterator); }
也可以直接一次性获取所有的行
File file = new File("/commons/io/project.properties"); List lines = FileUtils.readLines(file, "UTF-8");
JDK7也提供了类似的机制,
List<String> lines=Files.readAllLines(Paths.get("/tmp/test.csv"), Charset.forName("UTF-8"));
for(String line:lines){
System.out.println(line);
}
2) 一次性读取文件到String
String contents=FileUtils.readFileToString(file, "UTF-8);
2. 写文件
FileUtils.write(file, 内容, "UTF-8");
JDK7也有类似的机制,如:
BufferedWriter writer =
Files.newBufferedWriter( path, Charset.defaultCharset(),
StandardOpenOption.CREATE);
writer.write(content,
0
, content.length());