8

我正在用java编写一个小应用程序

我读取各种大小的文本文件,我需要逐行读取它们(并将行插入数组)。和之间在性能方面
有区别吗?BufferedReader.ReadLine()RandomAccessFile.ReadLine()

有任何理由偏爱其中一个吗?

4

1 回答 1

6

RandomAccessFile.readLine() 可能会稍微快一些,因为它忽略了字符编码。但是它不使用缓冲并且仍然使用 StringBuffer :P 所以它在你的系统上可能会更慢。

BufferedReader.readLine() 是首选,因为它处理字符编码,例如 UTF-8 或 Windows-1252。

还有一个 DataInputStream.readLine() 可以与 BufferedInputStream 一起使用。只有使用它才能确定您想要 ISO-8859-1 或 ASCII 编码。

于 2012-05-01T16:21:55.980 回答