8

私はJavaで小さなアプリケーションを書いています

私はさまざまなサイズのテキストファイルを読み取り、それらを1行ずつ読み取る必要があります(そしてその行を配列に挿入します)。とのパフォーマンス
に違いはありますか?BufferedReader.ReadLine()RandomAccessFile.ReadLine()

どちらかを好む理由はありますか?

4

1 に答える 1

6

RandomAccessFile.readLine()は、文字エンコードを無視するため、わずかに高速になる可能性があります。ただし、バッファリングを使用せず、StringBuffer:Pを使用するため、システムの速度が低下する可能性があります。

BufferedReader.readLine()は、UTF-8やWindows-1252などの文字エンコードを処理するため推奨されます。

BufferedInputStreamで使用できるDataInputStream.readLine()もあります。これを使用するのは、ISO-8859-1またはASCIIエンコーディングが必要であることを確認できる場合のみです。

于 2012-05-01T16:21:55.980 に答える