首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java IO 逐行讀取文件並替換內容寫入新文件

     編輯:程式設計綜合問答

需求:逐行讀取文件 A,將每行中的「1」替換為「一」,結果寫入文件 B。這是典型的流處理場景,使用 BufferedReader + BufferedWriter 可高效完成。

標準實現

try (BufferedReader reader = new BufferedReader(new FileReader("D:/aaaa.txt"));
     BufferedWriter writer = new BufferedWriter(new FileWriter("D:/bbbb.txt"))) {
    String line;
    while ((line = reader.readLine()) != null) {
        writer.write(line.replaceAll("1", "一"));
        writer.newLine(); // 跨平台換行
    }
    writer.flush();
}

關鍵點解析

  • try-with-resources:Java 7+ 自動關閉流,避免資源洩漏
  • replaceAll 使用正則,若需字面替換請用 replace
  • newLine() 比硬編碼 \r\n 更可移植
  • 大文件建議加上 BufferedInputStream 進一步提升性能

進階擴展

  • 使用 Files.lines() (Java 8) + Stream API 單行完成
  • 指定字符集 StandardCharsets.UTF_8 避免亂碼
  • 原地修改文件需臨時文件 + 原子重命名保證數據安全
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved