社区编辑申请
注册/登录
用Java压缩文件解决没有中文问题示例
开发 后端
本文将介绍如何用Java压缩文件解决没有中文问题,甚至可以写一个winzip之类的东东哦,有兴趣的可以研究一下。

使用Java自带的类 java.util.zip进行文件/目录的压缩的话,有一点不足,不支持中文的名件/目录命名,如果有中文名,那么打包就会失败。本人经过一段时间的摸索和实践,发现在一般的Ant.jar类库中也有zip类,import org.apache.tools.zip.*,能够解决不支持中文文件目录的问题,同时,Ant的获得途径也比较多,一般的应用服务器中有这个包,实在不行去下载个tomcat5.X,里面也有ant.jar,本人经过测试,可以使用。

import java.io.*;
import java.util.zip.*;
  /**
   * @version Version 1.3
   */
  public class w0514{
       public static void main(String[] args){
          try{
              BufferedReader in=new BufferedReader(
            new InputStreamReader(new FileInputStream(args[0]),"ISO8859_1"));
              FileOutputStream f=new FileOutputStream(args[1]+".zip");
              CheckedOutputStream ch=new CheckedOutputStream(f,new CRC32());
              ZipOutputStream out=new ZipOutputStream(
                                     new BufferedOutputStream(ch));
      
             int c;
             out.putNextEntry(new ZipEntry(args[0]));
             while((c=in.read())!=-1)
                 out.write(c);
               in.close();
               out.close();
             }
          catch(Exception e){
              e.printStackTrace();
             }
     }
  }

【编辑推荐】

  1. JavaOne 2009第三天:微软与 Sun/Oracle携手并进
  2. 开发高可移植性J2ME的软件
  3. Java虚拟机(JVM)中的内存设置详 解
  4. Java 中的堆内存与栈内存分配浅析
  5. 非常 全面的实用JavaScript开发工具列表
责任编辑:王观 来源: 百家编程
相关推荐

2022-06-05 21:09:47

Python办公自动化

2022-06-13 12:43:13

Java模块

2022-06-15 08:21:49

Linux运维工程师

2022-06-01 11:14:42

Java代码技巧

2022-06-27 09:54:38

编程语言JavaC++

2022-03-22 09:41:31

Java编程语言持久化

2022-05-17 09:14:50

聚类算法python

2022-06-22 08:02:11

2022-04-15 14:31:02

鸿蒙操作系统

2022-06-15 08:25:07

Python天气数据可视化分析

2022-06-28 09:26:25

Python配置文件

2022-06-20 08:58:25

Obsidian笔记工具

2022-06-28 12:35:21

DockerPython

2022-06-16 14:07:26

Java代码代码review

2022-06-14 07:29:51

squoosh压缩工具开源

2022-05-07 08:22:34

内核BPF代码

2022-05-09 08:55:58

Linuxdiff命令

2022-05-10 09:47:10

Bash字符串Linux

2022-05-20 08:17:43

Java日志

2022-06-27 23:44:37

云原生云存储云计算

同话题下的热门内容

源码探秘:Python 中对象是如何被调用的?吐血推荐17个提升开发效率的“轮子”超全!Python 中常见的配置文件写法Pandas 新手容易犯的六个错误Python 中的万能之王 Lambda 函数整理了100个Python精选库,建议收藏!Python进行数据可视化,你会用什么库来做呢?Spring MVC中@InitBinder注解是如何应用的?

编辑推荐

使用Kotlin做开发一个月后的感想面试官问你什么是消息队列?把这篇甩给他!五大自动化测试的Python框架图文详解两种算法:深度优先遍历(DFS)和广度优先遍历(BFS)2018年最流行的十大编程语言,其中包括你用的语言吗?
我收藏的内容
点赞
收藏

51CTO技术栈公众号