今天项目中用了下 java.util.zip 中的 ZipOutputStream 用来压缩文件,发现存在中文乱码问题,查了半天发现它不能很好的支持中文,所以用truezip来代替,在网上找到用法如下:
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.CopyUtils;
import de.schlichtherle.io.FileInputStream;
import de.schlichtherle.io.FileOutputStream;
import de.schlichtherle.util.zip.ZipEntry;
import de.schlichtherle.util.zip.ZipOutputStream;
public class Test
{
public static void main(String []args); throws Exception
{
String needtozipfilepath ="";
String zipfilepath = "";
File needtozipfile = new File(needtozipfilepath);;
File zipfile = new File(zipfilepath);;
FileOutputStream fout = new FileOutputStream(zipfile);;
ZipOutputStream zout = new ZipOutputStream(fout,"GBK");; //解决中文问题的关键所在
try
{
for(File in : needtozipfile.listFiles(););
{
ZipEntry ze = new ZipEntry(in.getName(););;
zout.putNextEntry(ze);;
FileInputStream fis = new FileInputStream(in);;
try
{
CopyUtils.copy(fis,zout);;
}
catch (IOException e);
{
// TODO: handle exception
}
finally
{
if(fis != null);
fis.close();;
zout.closeEntry();;
}
}
}
catch (IOException e);
{
// TODO: handle exception
}
finally
{
if(zout != null);
{
zout.close();;
fout.close();;
}
}
}
}
附件中有相关JAR包和源码及文档
分享到:
相关推荐
### Java将文件压缩为ZIP的方法 #### 知识点概览 本文主要介绍如何使用Java实现文件的ZIP压缩功能,并提供了完整的代码示例。通过学习本文,你可以掌握以下几个知识点: 1. 使用`java.util.zip`包中的类进行文件...
Java文件分割压缩是一种常见的操作,尤其在处理大数据或者网络传输时非常有用,因为单个大文件可能会导致处理效率低或传输困难。以下是一些相关的Java编程知识点: 1. **文件I/O操作**:在Java中,`java.io`包提供...
在Java编程环境中,处理文件压缩和解压缩是常见的任务,特别是在构建可执行的JAR包或者处理数据传输时。本文将深入探讨如何使用Java来处理ZIP文件,特别是针对标题所提及的“java 中 zip压缩文件解压工具类”。我们...
综上所述,这个实践项目涵盖了Java文件压缩与解压缩的核心技术,是学习和理解Java I/O和压缩库的宝贵资源。通过阅读源代码和论文,开发者不仅可以学习如何在Java中进行文件压缩,还能了解到如何将这些技术应用于实际...
在实际项目中,我们通常会将文件压缩集成到构建流程中,如使用Maven或Gradle等构建工具,通过插件来自动化这个过程。例如,Maven的`maven-resources-plugin`和`maven-war-plugin`可以配合使用`yuicompressor-maven-...
在Java编程中,将多个文件压缩成一个ZIP文件并实现下载是一个常见的任务,尤其是在处理大量数据或文件分发时。这个过程涉及到Java的I/O流、压缩和HTTP响应的使用。下面将详细介绍如何实现这个功能。 首先,我们需要...
GZ是一种常用的文件压缩格式,它利用了gzip程序进行压缩,而在Java中,我们可以使用`java.util.zip`包中的类来实现对GZ文件的压缩和解压缩操作。 在给出的代码中,有两个主要的方法:`testGzipOutput()`用于解压GZ...
在提供的压缩包子文件"java-视频压缩"中,可能包含了实现上述步骤的源代码、示例或者相关的第三方库。通过研究这些文件,开发者可以学习如何在Java环境中实现视频压缩的完整流程,并根据需求进行定制和优化。 总之...
以下将详细介绍Java中文件压缩与解压缩的核心概念和技术。 1. **Java内置压缩API** Java标准库提供了`java.util.zip`包,包含了对多种压缩格式的支持,如ZIP和GZIP。例如,`ZipOutputStream`用于创建ZIP文件,`...
通过以上知识点的学习,你不仅可以理解Java中文件压缩与解压缩的基本原理,还能掌握实际开发中需要注意的细节和优化策略。结合提供的源代码程序,你将有机会深入理解这些概念,并将其应用于实际项目中。
Java文件压缩与解压缩是软件开发中常见的操作,特别是在数据传输、存储优化和备份场景下。这个资源包“JAVA文件压缩与解压缩实践(源代码+论文).rar”提供了关于这个主题的源代码实现和相关理论研究。让我们深入探讨...
在Java编程语言中,文件的压缩与解压缩是常见的操作,尤其在数据传输、存储优化以及备份场景下显得尤为重要。本实践主要关注如何使用Java来处理ZIP格式的压缩文件,以下将详细介绍相关知识点。 1. **Java档案API...
在Java编程中,处理文件压缩和解压是常见的任务,特别是使用ZIP格式。然而,当涉及到包含中文字符的文件或目录时,可能会遇到乱码问题。这个问题主要源于字符编码的不一致,通常需要正确设置字符集来确保中文字符在...
在Windows环境下,使用Java进行程序开发时,有时我们需要对文件进行压缩操作,比如将文件压缩成RAR格式。这个过程涉及到Java的本地方法调用、文件I/O操作以及第三方库的集成。下面我们将详细探讨如何在Java中实现这...
Java文件压缩源码是Java开发中常见的需求,它允许开发者将多个文件或目录打包成一个压缩文件,方便存储和传输。在本例中,我们提到的实现方式是通过使用Apache Ant库中的`org.apache.tools.ant.taskdefs.Zip`类。...