各位大虾,我想请教一下,java 读取txt 文件时,是一次性读入内存然后一行一行取呢?还是一行一行来读的?

在这里谢了
FileReader fr = new FileReader(filePath);
BufferedReader br = new BufferedReader(fr);
String line = br.readLine();
我是这样写的,他是怎么读的?谢谢

第1个回答  2011-01-21
如果你选择的是文本输入流,是一行一行的读。
第2个回答  2011-01-21
FileReader :把文件转换为字符流读入;

BufferedReader会一次性从物理流中读取8k(默认数值,可以设置)字节内容到内存

String line = br.readLine();然后一行一行取

具体看下面网址

参考资料:http://apps.hi.baidu.com/share/detail/5265476

本回答被提问者采纳
第3个回答  2011-01-21
/**
*读取指定路径的文件,按行读取
*
*/
public static String readTextFile(String path) throws Exception {
//String ret = new String();
StringBuffer ret = new StringBuffer();
//BufferedReader in = new BufferedReader(new FileReader(path));
BufferedReader in =
new BufferedReader(
new InputStreamReader(new FileInputStream(path), "gb2312"));

String s;// = new String();
//按行读取
while ((s = in.readLine()) != null) {

ret.append(s);
}
in.close();

return ret.toString();
}
相似回答