處理大文件時,使用Java的BufferedWriter可以提高文件寫入性能。以下是一個使用BufferedWriter處理大文件的示例:
import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
public class BufferedWriterExample {
public static void main(String[] args) {
// 指定輸入文件和輸出文件路徑
String inputFilePath = "input.txt";
String outputFilePath = "output.txt";
// 創建一個BufferedWriter實例
try (BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outputFilePath), StandardCharsets.UTF_8))) {
// 讀取輸入文件并逐行寫入到BufferedWriter
try (BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(inputFilePath), StandardCharsets.UTF_8))) {
String line;
while ((line = bufferedReader.readLine()) != null) {
bufferedWriter.write(line);
bufferedWriter.newLine(); // 換行
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在這個示例中,我們首先創建了一個BufferedWriter實例,用于將數據寫入到輸出文件。然后,我們使用BufferedReader讀取輸入文件,并將每一行數據寫入到BufferedWriter中。這樣可以避免頻繁地打開和關閉文件,從而提高文件寫入性能。
注意:這個示例假設輸入文件中的每一行都可以直接寫入到輸出文件中,沒有特殊的分隔符或格式要求。如果需要處理特殊的分隔符或格式,可以在寫入BufferedWriter之前對輸入文件的內容進行處理。