将GBK的文件转换成UTF-8的文件格式

-如题直接上代码:

import java.io.*;

public class Demo02 {
    
    
    /*
        练习:转换文件编码
            将UTF-8编码的文本文件,转换成GBK编码的文本文件

        分析:
            1.创建InputStreamRead对象,构造方法中传递字节输入流和指定的编码表名称:UTF-8
            2.创建OutputStreamWriter对象,构造方法中传递字节输出流和指定的编码表名称:GBK
            3.使用InputStreamRead对象中的read()方法读取文件
            4.使用OutputStreamWriter对象中的write方法,把读取的数据写入到文件中
            5.释放资源

     */
    public static void main(String[] args) throws IOException {
    
    
        show01();

    }

    private static void show01() throws IOException {
    
    
        //1.创建InputStreamRead对象,构造方法中传递字节输入流和指定的编码表名称:GBK
        InputStreamReader isr = new InputStreamReader(new FileInputStream("C:\\Users\\why\\Desktop\\untitled\\src\\test\\a.txt"),"gbK");
        //2.创建OutputStreamWriter对象,构造方法中传递字节输出流和指定的编码表名称:UTF-8
        OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("C:\\Users\\why\\Desktop\\untitled\\src\\test\\a2.txt"),"utf-8");
        //3.使用InputStreamRead对象中的read()方法读取文件
        int len =0 ;
        while ((len=isr.read())!=-1){
    
    
        // 4.使用OutputStreamWriter对象中的write方法,把读取的数据写入到文件中
            osw.write(len);
        }
        // 5.释放资源,再调用close的时候会自动调flash的接口进行刷新
        osw.close();
        isr.close();

    }
}

猜你喜欢

转载自blog.csdn.net/weixin_41977380/article/details/112554215