java中zip壓縮發生中文亂碼怎么辦

用java來打包文件生成壓縮文件,有兩個地方會出現亂碼

公司主營業務:成都網站設計、網站制作、移動網站開發等業務。幫助企業客戶真正實現互聯網宣傳,提高企業的競爭能力。創新互聯建站是一支青春激揚、勤奮敬業、活力青春激揚、勤奮敬業、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰,讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創新互聯建站推出鎮海免費做網站回饋大家。

1、內容的中文亂碼問題,這個問題網上很多人給出了解決方法,兩種:修改sun的源碼;使用開源的類庫org.apache.tools.zip.ZipOutputStream和org.apache.tools.zip.ZipEntry,這兩個類ant.jar中有,可以下載使用即可,毫無疑問,選擇后者更方便。

2、壓縮文件注釋的中文亂碼問題:zos.setComment("中文測試");這個問題在網上查了半天沒看到有人解釋,遂只能自己想辦法解決。

在自己機器上的工程創建的測試類,沒有任何問題,但是在公司的項目中使用一直出現亂碼,通過使用設置編碼的方法(zos.setEncoding("gbk");)終于發現了問題,測試項目的編碼方式為gbk,而公司項目的默認編碼是utf-8,所以測試項目沒問題而公司的項目中出現了問題。

org.apache.tools.zip.ZipOutputStream默認使用項目的編碼方式,理論上講utf-8也是支持中文的,是在想不通為啥還是亂碼,通過setEncoding方法改成gbk即可解決。

附上一段壓縮文件的代碼

package com.compress;  
  
import java.io.BufferedInputStream;  
import java.io.BufferedOutputStream;  
import java.io.DataInputStream;  
import java.io.File;  
import java.io.FileInputStream;  
import java.io.FileOutputStream;  
  
import org.apache.tools.zip.ZipEntry;  
import org.apache.tools.zip.ZipOutputStream;  
  
public class CompressEncodingTest {  
  
    /** 
     * @param args 
     * @throws Exception 
     */  
    public static void main(String[] args) throws Exception {  
        File f = new File("中文測試.txt");  
        ZipOutputStream zos = new ZipOutputStream(new BufferedOutputStream(  
                new FileOutputStream("zipTest.zip"), 1024));  
        zos.putNextEntry(new ZipEntry("中國人.txt"));  
        DataInputStream dis = new DataInputStream(new BufferedInputStream(  
                new FileInputStream(f)));  
        zos.putNextEntry(new ZipEntry(f.getName()));  
        int c;  
        while ((c = dis.read()) != -1) {  
            zos.write(c);  
        }  
  
        zos.setEncoding("gbk");  
        zos.setComment("中文測試");  
  
        zos.closeEntry();  
        zos.close();  
    }  
  
}

以上就是java中zip壓縮亂碼解決方法,更多請關注創新互聯其它相關文章!

網頁題目:java中zip壓縮發生中文亂碼怎么辦
網頁路徑:http://m.kartarina.com/article12/pphcdc.html

成都網站建設公司_創新互聯,為您提供Google、動態網站網站內鏈、網站設計公司、網站收錄、企業網站制作

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

搜索引擎優化
主站蜘蛛池模板: 精品亚洲AV无码一区二区三区 | 国产精品亚洲а∨无码播放不卡| 亚洲中文字幕无码久久2017| 国产AV一区二区三区无码野战 | 亚洲国产成人精品无码区二本 | 极品粉嫩嫩模大尺度无码视频| 狠狠躁狠狠爱免费视频无码 | 亚洲AV无码国产剧情| 日韩精品无码免费专区网站| 无码乱肉视频免费大全合集| 久久久久无码专区亚洲av| 久久久无码精品亚洲日韩京东传媒| 无码激情做a爰片毛片AV片| 无码人妻精品一区二区三区99仓本| 亚洲av无码成人影院一区 | 亚洲AV日韩AV永久无码免下载 | 亚洲av无码不卡久久| 亚洲成A∨人片天堂网无码| 亚洲熟妇无码一区二区三区导航| 国产AV无码专区亚洲AV男同| 精品无码中文视频在线观看| 亚洲中文字幕无码亚洲成A人片| 国产免费无码一区二区| av无码一区二区三区| 爆乳无码AV一区二区三区| 精品视频无码一区二区三区| 国产精品亚韩精品无码a在线 | 久久人妻内射无码一区三区| 国产精品无码久久久久| 日韩毛片无码永久免费看| 中文字幕无码视频手机免费看| 蜜芽亚洲av无码精品色午夜| 色AV永久无码影院AV| 无码人妻精品一区二区三区在线| 国产成人精品无码免费看| 亚洲国产AV无码专区亚洲AV| 无码国产色欲XXXXX视频| 人妻aⅴ无码一区二区三区| 亚洲熟妇无码爱v在线观看| 亚洲av无码一区二区三区天堂古代| 久久综合精品国产二区无码|