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

Android 文件讀取最佳實踐:BufferedReader 與輸入流的高效使用模式

     編輯:程式設計綜合問答
標準模式
FileInputStream fis = new FileInputStream(filePath);
InputStreamReader isr = new InputStreamReader(fis, "UTF-8");
BufferedReader br = new BufferedReader(isr);

String line;
while ((line = br.readLine()) != null) {
    // 處理每行
}

br.close(); // 關閉鏈會級聯關閉 fis、isr

關鍵點

  • 緩衝讀取:BufferedReader 內部維護 8KB 緩衝區,大幅減少系統調用次數。
  • 編碼指定:InputStreamReader 顯式傳入 UTF-8,避免平台預設編碼不一致導致亂碼。
  • 資源釋放:使用 try-with-resources (Java 7+) 自動關閉:
try (BufferedReader br = new BufferedReader(
        new InputStreamReader(new FileInputStream(file), "UTF-8"))) {
    String line;
    while ((line = br.readLine()) != null) { /* ... */ }
}

大文件優化

  • 單行處理避免一次性載入內存。
  • 若需隨機訪問,考慮 RandomAccessFile 或 MappedByteBuffer。

參考教程

Android 文件讀寫完整指南

總結

FileInputStream → InputStreamReader → BufferedReader 三層包裝是 Android 文本文件讀取的標準高效模式,務必顯式指定編碼並妥善關閉資源。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved