RandomAccessFile 讀寫文件時,不管文件中保存的數據編碼格式是什麼,使用 RandomAccessFile對象方法的 readLine() 都會將編碼格式轉換成 ISO-8859-1 。所以 輸出顯示是還要在進行一次轉碼
解決方式
package fileReadAndWrite;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
/**
* 測試文件讀寫
* @author laobiao
*
*/
public class bigFileRW {
public static void main(String[] args) throws Exception {
RandomAccessFile ra = new RandomAccessFile("test.txt", "rw");
ra.seek(0);
ra.write("a bcd你好啊的撒法".getBytes());
ra.seek(0);
//需要重新轉碼才能正常顯示
System.out.println(new String(ra.readLine().getBytes("ISO-8859-1"),"utf-8"));
ra.close();
}
}