<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-25  評論-6  文章-0  trackbacks-0

    用java.util.zip制作zip壓縮文件時,如果制作的壓縮文件有中文文件名或中文目錄,用WinZip、WinRar解壓時會有亂碼, 同樣,用java.util.zip解壓WinZip、WinRar打包的壓縮文件時,中文也是亂碼,主要原因是因為java.util.zip使用編碼和WinZip和WinRar使用的不同,在網上找了半天,發現只有兩種解決方法:
    1、修改import java.util.zip.ZipInputStream和ZipOutputStream。
    2、使用Apache Ant里提供的zip工具。
    -------------------------------------
    已找到解決方法,就是用Ant的zip來實現,Ant里面可以指定編碼,而java.util.zip是寫死了的,只能用UTF-8,呵呵
    -------------------------------
    不要使用java.util.zip的包,用ant.jar放到classpath中

    //在classpath中引入ant.jar的包
    import java.io.*;?
    import java.util.*;
    import java.io.File;
    import org.apache.tools.zip.*;

    public? class? CDGGzip?
    {?
    ? //boolean? packFrame? =? false;?
    ? private File srcPath =new File("d:"+File.separator+"邢曉寧");
    ? private String outFilename=new String("d:"+File.separator+"邢曉寧.zip");
    private int len=srcPath.listFiles().length;
    private String[] filenames = new String[len];
    public void setSrcPath(String src){
    ?? srcPath=new File(src);
    ? }
    ? public File getSrcPath(){
    ? return srcPath;
    ? }
    public void setOutFilename(String out){
    ?? outFilename=out;
    ? }
    ? public String getOutFilename(){
    ? return outFilename;
    ? }?

    ? public void gzip(){
    byte[] buf = new byte[1024];
    ? try {
    ? File[]? files? =? srcPath.listFiles();
    ? for(int? i=0;i<len;i++)
    ? {
    ? //if(!files[i].isDirectory())
    filenames[i]=srcPath.getPath()+File.separator+files[i].getName();
    }
    ? ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
    ? for (int i=0; i<filenames.length; i++)
    ? {
    ? FileInputStream in = new FileInputStream(filenames[i]);
    ? out.putNextEntry(new org.apache.tools.zip.ZipEntry(files[i].getName()));
    ? int len;
    ? while ((len = in.read(buf)) > 0)
    ? {
    ? out.write(buf, 0, len);
    ? }

    ? out.closeEntry();
    ? in.close();
    ????? }

    ????? out.close();
    ??? }
    ??? catch (IOException e)
    ??? {
    ??? System.out.println(e);
    ??? }
    ? }
    ?
    ? public static void main(String arg[]){
    ? CDGGzip cdggzip=new CDGGzip();
    ? cdggzip.gzip();
    ? }
    ?
    }

    posted on 2006-05-29 19:08 MyJavaWorld 閱讀(432) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产亚洲AV夜间福利香蕉149| 野花高清在线观看免费3中文| 国产精品日本亚洲777| 全免费毛片在线播放| 亚洲黄色免费观看| 日韩亚洲综合精品国产| 国产视频精品免费| 久久精品国产亚洲AV未满十八| 无码免费午夜福利片在线| 亚洲国产成人精品激情| 久久久精品国产亚洲成人满18免费网站| 国产一区二区视频免费| 亚洲国产高清视频在线观看| 亚洲网站免费观看| 国产亚洲中文日本不卡二区| a级日本高清免费看| 亚洲va久久久噜噜噜久久| 久久爰www免费人成| 狠狠亚洲狠狠欧洲2019| 亚洲国产日韩视频观看| 午夜免费不卡毛片完整版| 亚洲日韩av无码| 另类图片亚洲校园小说区| 亚洲国产综合无码一区二区二三区 | a级成人毛片免费图片| 亚洲国产精品无码久久久秋霞2| 日本免费一区二区久久人人澡 | 亚洲综合熟女久久久30p| 大地资源在线资源免费观看 | 在线成人a毛片免费播放| 久久久久亚洲精品无码蜜桃| 99久久久精品免费观看国产| 亚洲视频日韩视频| 成人a视频片在线观看免费| 羞羞网站免费观看| 在线视频免费国产成人| 精品人妻系列无码人妻免费视频| 亚洲老熟女@TubeumTV| 免费在线观看亚洲| 三年片在线观看免费观看大全动漫| 亚洲综合中文字幕无线码|