用字節流解決GBK編碼UTF-8編碼的轉換


import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class BianMaDemo4 {
    public static void main(String[] args) throws IOException, FileNotFoundException {
        
        /*
         * 
         * GBK編碼字節流與UTF-8編碼字節流的轉換:
         * 操作步驟就是:先解碼:new String(src,0,len,"GBK")得到字符串;再使用getBytes("UTF-8")得到UTF-8編碼字節數組        
         */
        
        //gbk-->utf-8
        FileInputStream fis=new FileInputStream("gbk_file.txt");//gbk文件
        FileOutputStream fos=new FileOutputStream("222.txt");//utf-8文件
        byte[] src=new byte[1024];
        int len;
        byte[] dest;
        while((len=fis.read(src))!=-1){
            dest=new String(src,0,len,"GBK").getBytes("UTF-8");
            fos.write(dest,0,dest.length );
        }
        
        
        //utf-8-->gbk
        /*FileInputStream fis=new FileInputStream("222.txt");//utf-8文件
        FileOutputStream fos=new FileOutputStream("gbk_file.txt");//gbk文件
        byte[] src=new byte[1024];
        int len;
        byte[] dest;
        while((len=fis.read(src))!=-1){
            dest=new String(src,0,len,"UTF-8").getBytes("GBK");
            fos.write(dest);
        }*/

        fis.close();//釋放資源
        fos.close();
        
    }

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM