RandomAccessFile 文件读写中文乱码解决方案!

Posted 搬砖工的奋斗史

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RandomAccessFile 文件读写中文乱码解决方案!相关的知识,希望对你有一定的参考价值。

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();
            
    }

     
    
}

 

以上是关于RandomAccessFile 文件读写中文乱码解决方案!的主要内容,如果未能解决你的问题,请参考以下文章

Java 核心编程——文件随机读写类(RandomAccessFile)

java 读写操作大文件 BufferedReader和RandomAccessFile

Java 文件操作-RandomAccessFile

IO--RandomAccessFile类

具有读写模式的 RandomAccessFile 过滤器在 linux 环境下不起作用

在java中RandomAccessFile类的作用:对指定文件可以进行读写的操作