用RandomAccessFile类向文件中写汉字字符串,用writeUTF(),writeChars()和writebytes()写,读出来的都是乱码,求可以正确读出的写入函数

解决方案 »

  1.   

    引起你这乱码问题的原因有多种
    比如,可能是你的String源不是UTF-8的,这样用writeUTF写出去就是乱码
    也可能是你的查看的文本时用的编码有问题
    或者你是用程序读的,读的编码有问题总之,有问题的不是那些方法,而是你的使用方法,仔细检查一下你的代码吧
      

  2.   

    断点跟踪一下,看你的String在哪里的时候是正常的,在哪一步的时候开始出现的乱码,从而确定原因。
      

  3.   


    public static void main(String[] args) {
    try {
    RandomAccessFile raf = new RandomAccessFile("e:\123.txt", "rws");
    raf.writeUTF("不是吧");
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    测试下来 123.txt文件打开 内容都正常 不是乱码
      

  4.   

    从你的inputStream处指定编码看看