我正在用 java 编写一个小应用程序
我读取各种大小的文本文件,我需要逐行读取它们(并将该行插入到数组中)。
BufferedReader.ReadLine()
和 RandomAccessFile.ReadLine()
在性能方面有区别吗?
有什么理由偏爱其中之一吗?
最佳答案
RandomAccessFile.readLine() 可能会稍微快一些,因为它忽略了字符编码。但是它不使用缓冲并且仍然使用 StringBuffer :P 所以它在你的系统上可能会更慢。
BufferedReader.readLine() 是首选,因为它处理字符编码,例如UTF-8 或 Windows-1252。
还有一个 DataInputStream.readLine() 可以与 BufferedInputStream 一起使用。只有使用它才能确定您需要 ISO-8859-1 或 ASCII 编码。
关于java - BufferedReader 与 Java 中的 RandomAccessFile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10400688/