Advertisement

使用Java压缩时,通过org.apache.tools.zip包来处理包含中文的文件名。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
我已自行打包,并将压缩文件直接放置于WEB-INF\classes目录下进行解压。为了确保程序能够正确处理字符编码,请在程序中添加 outf.setEncoding(gbk)。以下是我整理成单个压缩包的多个文件,供您参考:String zipf=D:\\xxx\\xx\\xxb\\xx\\xz.zip; //---------修改路径--- java.io.File zipfile =new java.io.File(zipf); java.io.File[] srcfile=new java.io.File[20]; //自己把要压缩的文件加进去int m=0; //---------压缩包中文件的个数-------------- byte[] buf=new byte[1024]; try { //ZipOutputStream类:完成文件或文件夹的压缩 ZipOutputStream outf=new ZipOutputStream(new FileOutputStream(zipfile)); outf.setEncoding(gbk); for(int i=0;i0){ outf.write(buf,0,len); } outf.closeEntry(); in.close(); } outf.close(); // System.out.println(压缩完成.); } catch (Exception e) { e.printStackTrace(); }

全部评论 (0)

还没有任何评论哟~
客服
客服
  • 使org.apache.tools.zipJava问题
    优质
    本文章介绍了如何利用Apache提供的tools.jar库中的org.apache.tools.zip包来解决在Java程序中处理含有中文字符的ZIP文件时遇到的各种编码和解码难题。通过该方法,可以有效应对文件名乱码的问题,并提供详尽示例代码帮助读者实现正确读写操作。 使用我自己准备的包直接放到WEB-INF\classes目录下解压即可,在程序中添加`outf.setEncoding(gbk);`这一行代码。 下面是将多个文件压缩成一个zip文件的方法,供参考: ```java String zipFilePath = D:\\xxx\\xx\\xxb\\xx\\xz.zip; // 修改路径 File zipfile = new File(zipFilePath); File[] srcFiles = new File[20]; // 自己把要压缩的文件添加进去 int fileCount = 0; // 压缩包中文件的数量 byte[] buffer = new byte[1024]; try { ZipOutputStream outputStream = new ZipOutputStream(new FileOutputStream(zipfile)); outputStream.setEncoding(gbk); for (int i = 0; i < fileCount; i++) { FileInputStream inputStream = new FileInputStream(srcFiles[i]); String entityName = srcFiles[i].getName(); outputStream.putNextEntry(new ZipEntry(entityName)); int len; while ((len = inputStream.read(buffer)) > 0) { outputStream.write(buffer, 0, len); } outputStream.closeEntry(); inputStream.close(); } outputStream.close(); } catch (Exception e) { e.printStackTrace(); } ```
  • 使Java向zip追加
    优质
    本教程详细讲解了如何利用Java编程语言实现向已存在的ZIP压缩文件中添加新的文件的功能,适合中级开发者参考学习。 本段落主要介绍了如何使用Java向zip压缩包追加文件,并通过示例代码进行了详细讲解。内容对学习或工作中需要实现此功能的人士具有参考价值。有兴趣的朋友可以查阅相关资料进一步了解。
  • Java和解——乱码问题
    优质
    本文介绍了在Java编程中处理包含中文文件名的压缩与解压时遇到的乱码问题,并提供了有效的解决方案。 在Java中处理文件压缩与解压时遇到中文文件名乱码问题的解决方法。
  • Java
    优质
    本教程详细介绍如何使用Java编程语言从ZIP或JAR等压缩包中解压文件的方法与步骤。 简单地从压缩包(Zip)中提取文件,并将提取出的文件名列出。
  • JavaZip、解和加密).zip
    优质
    本教程详细介绍了如何使用Java编程语言对ZIP文件进行操作,涵盖了压缩文件、提取文件以及为ZIP文件添加密码保护等实用技巧。 使用Java进行Zip文件操作(包括压缩、解压及加密)可以借助zip4j-1.3.2.jar和ant-1.10.6.jar这两个库来实现。这些工具提供了丰富的功能支持,使得处理ZIP格式的文件变得简单高效。在开发过程中,可以根据具体需求选择合适的库进行集成,并利用它们提供的API完成相应的操作任务。
  • org.apache.tools.zip.* 所需 jar
    优质
    本资源提供Apache组织开发的工具包中用于文件压缩与解压功能的jar包,涵盖org.apache.tools.zip下所有类,便于开发者实现ZIP格式文件的操作。 要使用Apache Commons Compress库中的org.apache.tools.zip包来处理ZIP文件,你需要导入以下类:ZipEntry、ZipFile和ZipOutputStream。这些工具可以帮助你压缩zip包以及解压zip包,并且可以用于远程打包操作及实现文件的批量下载与上传功能。
  • Zip4j——JavaZIP
    优质
    简介:Zip4j是一款专为Java开发者设计的轻量级开源库,用于创建、读取和操作ZIP格式的压缩文件。它提供了简单易用且功能强大的API来实现高效的数据压缩与解压需求。 Java操作zip压缩格式的开源项目Zip4j功能强大且使用方便,完全满足Java对ZIP文件的操作需求。该项目提供jar包、源码及示例供下载。 主要特性包括: - 创建、添加、提取、更新或移除ZIP压缩文件中的文件。 - 支持读写有密码保护的ZIP文件 - 采用AES 128/256算法进行加密支持标准Zip加密方法 - 兼容zip64格式,可创建和抽取分块zip文件(如z01, z02等) - 支持Unicode编码文件名及进度监控功能 此外,该项目还提供了Store(非压缩)与Deflate两种压缩方式的支持。
  • nltk_data
    优质
    NLTK_DATA压缩包包含了Python自然语言处理库NLTK所需的数据文件和模型资源,便于用户快速安装并使用该库进行文本分析。 在Python的自然语言处理(NLP)领域,NLTK库扮演着至关重要的角色,而nltk_data是其重要组成部分之一。它包含了大量用于训练模型、进行文本预处理以及执行各种NLP任务的数据集和资源。本段落将深入探讨nltk_data包含的各个子模块及其应用,帮助读者更好地理解这一关键工具。 首先来看`chunkers`模块。分词后的进一步处理称为Chunking,它通过组合具有相同词性的连续词语来形成更大的单元,如名词短语或动词短语。nltk_data提供了预训练的chunker,方便对文本进行结构分析,这对于信息提取和语义理解非常有用。 其次,`corpora`是nltk_data的核心部分之一,包含了各种语言的语料库(例如Brown语料库、Gutenberg电子书以及Web文本等)。这些丰富的数据源不仅用于训练和测试NLP模型,还适用于词汇习得、语法分析及情感分析等多种任务。 在`grammars`模块中,一系列预定义的语法规则被提供给开发者使用。通过结合这些规则与NLTK解析器,可以构建复杂的自然语言理解和生成系统。 `help`子目录为初学者提供了关于NLTK库的重要辅助信息、文档和示例教程等资源。 此外,在`models`模块中包含了一系列预训练模型(如词性标注器和命名实体识别器),这些可以直接应用于处理新的文本数据,大大减少了开发者的训练成本。 另外,nltk_data中的`stemmers`集合了多种词干提取算法(例如Porter Stemmer和Lancaster Stemmer)。它们能够将单词还原到其基本形式,便于后续的文本分析与信息检索工作。 在`taggers`模块中,则包括了一系列用于自动为每个单词添加词性标签的工具(如基于条件随机场的Maxent_Tagger),这是许多NLP任务的基础步骤之一。 最后,在处理文本时不可或缺的是通过使用nltk_data中的`tokenizers`来将文本分割成最基本的单元,例如PunktSentenceTokenizer能够智能地识别句子边界,这对于后续文本处理至关重要。 总之,nltk_data是NLTK库的强大后盾。它提供了丰富的数据资源、预训练模型和工具,极大地简化了自然语言处理的复杂性。无论是新手还是经验丰富的开发者都能从中受益,并利用其高效准确地实现诸如情感分析、主题建模及机器翻译等复杂的NLP任务。
  • Nacos配置
    优质
    本资源为Nacos配置管理工具中的配置文件压缩包,包含项目运行所需的各种配置参数和环境变量设置,便于管理和更新。 基于微服务技术架构的电子商城系统源代码采用Vue、Spring Boot、MyBatis、Docker快速搭建。需要添加RocketMQ的配置,并将该配置加入到Nacos配置文件中:emall-order.yml rocketmq: name-server: 127.0.0.1:9876 #连接超时时间 producer: send-message-timeout: 30000 #发送消息超时时间 group: order-group