「\n\n」によって 2 つの部分に分割されたファイルがあります。最初の部分は長すぎない文字列で、2 番目の部分はバイト配列で、かなり長くなる可能性があります。
次のようにファイルを読み込もうとしています:
byte[] result;
try (final FileInputStream fis = new FileInputStream(file)) {
final InputStreamReader isr = new InputStreamReader(fis);
final BufferedReader reader = new BufferedReader(isr);
String line;
// reading until \n\n
while (!(line = reader.readLine()).trim().isEmpty()){
// processing the line
}
// copying the rest of the byte array
result = IOUtils.toByteArray(reader);
reader.close();
}
結果の配列はあるべきサイズですが、その内容は壊れています。またはでtoByteArray
直接使用しようとすると、結果の内容が空になります。fis
isr
ファイルの残りの部分を正しく効率的に読み取るにはどうすればよいですか?
ありがとう!