老坛酸菜吃鸭子
2022-04-02 13:04
采纳率: 72.7%
浏览 23
已结题

【java】使用字符流复制文件 乱码

问题相关代码,请勿粘贴截图

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.nio.CharBuffer;

public class Ooutputstreamwrite {

    public static void main(String[] args) throws IOException {

        OutputStreamWriter o= new OutputStreamWriter(new FileOutputStream("D:\\FILE\\a.txt"),"GBK");
        /* 构造方法
         * OutputStreamWriter(OutputStream out)
         * OutputStreamWriter(OutputStream out,String charsetName) */
        InputStreamReader i= new InputStreamReader(new FileInputStream("D:\\FILE\\java.txt"),"GBK");

        char[]  b=new char[100];
        while(i.read(b)!=-1) {
            o.write(b);
        }
        o.close();
        i.close();

    }

}

运行结果及报错内容

a.txt文件复制内容乱码

我的解答思路和尝试过的方法

加上了GBK编码为什么还是乱码,new String()方法里面要求的是 byte[]类型,强制转换也不行,字符流用来操作中文的便利性体现在哪里,感觉还是很麻烦

我想要达到的结果

成功复制中文

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题