參照課本:Java 大學實用教程
需要注意的是,RondomAccesFile流的readLine()方法在讀取含有非ASCLL字符的文件時(如含有漢字)會出現亂碼問題,因此需要把readLine()讀取的字符串用“iso-8859-1"重新編碼放到數組byte中,然后用當前機器的編碼將該數組轉化為字符串,操作如下:
(1)讀取
String line = in.readLine();
(2)用 iso-8859-1 重新編碼
byte b[] = line.getBytes("iso-8859-1");
(3)使用當前機器的默認編碼將字節數組轉化為字符串
String content = new String(b);
如果當前機器默認編碼是GB2312,那么,上面等價於:
String content = new String(b,"GB2312");
(有的是utf-8)
