`
zzc1684
  • 浏览: 1220424 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

ZipOutputStream ZipEntry 压缩

    博客分类:
  • Java
阅读更多
import java.io.*;
import java.util.zip.*;

public class Text1 {
	public static void doit(String filein, String fileout) {
		FileInputStream fis = null;
		FileOutputStream fos = null;
		try {
			fis = new FileInputStream(filein);
			fos = new FileOutputStream(fileout);
			ZipOutputStream zos = new ZipOutputStream(fos);
			ZipEntry ze = new ZipEntry(filein);
			zos.putNextEntry(ze);
			final int BUFSIZ = 4096;
			byte inbuf[] = new byte[BUFSIZ];
			int n;
			while((n = fis.read(inbuf)) != -1) {
				zos.write(inbuf, 0, n);
			}
			fis.close();
			fis = null;
			zos.close();
			fos = null;
		} catch(Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if(fis != null) fis.close();
				if(fos != null) fos.close();
			} catch(Exception e) {
				e.printStackTrace();
			}
		}
	}
	public static void main(String[] args) {
		doit("Test.java", "ssssssssssss.rar");
	}
}

 

分享到:
评论

相关推荐

    JDK ZipEntry压缩中文文件名乱码解决

    项目中碰到问题.jdk zipEntry 压缩中文文件名乱码  上网查了下,有两种方法,一种修改jdk ZipInputStream及ZipOutputStream 的源文件,比较麻烦,不建议此项.  第二种 就是拿来主义,因为 开源项目 Ant 里已经有...

    ZipOutputStream 压缩文件以及乱码问题解决方案

    ZipEntry zipEntry = new ZipEntry(parent + "/" + file.getName()); zos.putNextEntry(zipEntry); byte[] bytes = new byte[1024]; int length; while ((length = fis.read(bytes)) >= 0) { zos.write(bytes,...

    用java对文件进行压缩并且解决乱码问题

    ZipEntry zipEntry = new ZipEntry(entryName); zipEntry.setMethod(ZipEntry.DEFLATED); // 使用DEFLATED方法进行压缩 zos.putNextEntry(zipEntry); byte[] buffer = new byte[1024]; int read; while (...

    java zipentry.jar 解决解压失败问题

    Java的`java.util.zip`包提供了对ZIP文件的支持,包括`ZipInputStream`和`ZipOutputStream`类用于读写ZIP文件,以及`ZipEntry`类来代表ZIP文件中的单个条目。当我们尝试用这些类解压含有中文名的文件时,如果未正确...

    Java实现的带密码压缩与解压zip文件源码

    3. **压缩过程**:首先,我们需要创建一个`ZipOutputStream`,然后为每个要压缩的文件创建一个`ZipEntry`,设置其密码,然后将其写入`ZipOutputStream`。最后,关闭`ZipOutputStream`以完成写入。 4. **解压过程**...

    java zip压缩解压工具解决中文乱码问题

    可以使用`ZipEntry`的`setName()`方法来设定文件名的编码: ```java ZipInputStream zis = new ZipInputStream(new FileInputStream("input.zip")); ZipEntry entry; while ((entry = zis.getNextEntry()) != null)...

    Java zip 压缩/解压源码

    在Java编程语言中,`zip`...通过`ZipFile`、`ZipOutputStream`和`ZipEntry`,我们可以方便地完成文件和目录的压缩与解压缩任务。在实际应用中,理解这些类的用法和交互对于编写高效、可靠的压缩/解压缩程序至关重要。

    ant-1.7.1(org.apache.tools.zip.ZipOutputStream).zip

    1. **ZipEntry**:表示压缩文件中的一个条目,可以是一个文件或目录。创建`ZipEntry`对象时,需要提供文件名,这就是编码问题出现的地方。 2. **CRC32**:在Zip文件中用于校验数据完整性的循环冗余校验码。当写入...

    使用zip实现压缩算法

    // 创建ZipEntry,代表压缩文件条目 var entry = new ZipEntry("myFile.txt"); // 将文件流写入ZipOutputStream using (var fileStream = File.OpenRead("myFile.txt")) { zipStream.PutNextEntry(entry); ...

    Java Zip算法压缩多个文件的例子.rar

    Java Zip算法压缩多个文件的例子,具体的实现原理是:先打开文件并读取,然后利用ZipEntry实例化待压缩的条目列表,将ZIP条目列表写入输出流,从源文件得到文件输入流,写入缓冲数据等。相关代码:  ...

    zip 压缩 文件 Java

    解压缩ZIP文件则需要使用ZipInputStream,通过读取每一个ZipEntry并将其写入到目标位置。以下是一个基本的解压缩示例: ```java import java.io.*; import java.util.zip.*; public class UnzipFileExample { ...

    org.apache.tools.zip.*文件打包需要的jar包

    import org.apache.tools.zip.ZipEntry; import org.apache.tools.zip.ZipFile; import org.apache.tools.zip.ZipOutputStream; 需要的jar包,压缩zip包和解压zip包,远程打包,文件批量下载、文件批量上传

    zip压缩java工具类包含jar文件

    在`zip`压缩过程中,我们需要创建`ZipOutputStream`,通过它将`ZipEntry`写入到`zip`文件中。例如: ```java FileInputStream fis = new FileInputStream(file); ZipOutputStream zos = new ZipOutputStream(new ...

    基于java的用Zip压缩多个文件实例源码.zip

    在Java中,处理文件压缩的任务通常涉及到`java.util.zip`包中的类,如`ZipOutputStream`和`ZipEntry`。 `ZipOutputStream`是Java提供的用于创建Zip格式压缩文件的流类。它继承自`DeflaterOutputStream`,并允许你...

    (JAVA)利用Java实现zip压缩.解压缩.rar_decompress rar java_zip 压缩

    ZipEntry zipEntry = new ZipEntry(file.getName()); zos.putNextEntry(zipEntry); Files.copy(file.toPath(), zos); zos.closeEntry(); ``` 3. **关闭`ZipOutputStream`**:最后,记得关闭`ZipOutputStream`以完成...

    Java用Zip压缩多个文件实例源码

    对于每个需要压缩的文件,我们创建一个`ZipEntry`对象,设置其名称,然后将其写入`ZipOutputStream`。这里需要确保文件路径名是相对的,而不是绝对的。 ```java File fileToCompress = new File("path/to/file");...

    C#使用J#类库中的 Zip类压缩文件和数据

    然后,可以创建ZipOutputStream实例来写入ZIP文件,并使用ZipEntry类来表示每个压缩的文件或数据块。 以下是一个简单的示例: ```csharp using java.util.zip; using System.IO; public void CompressFile(string ...

    java zip解压缩

    ZipEntry zipEntry = new ZipEntry(parentPath + file.getName()); zos.putNextEntry(zipEntry); byte[] bytes = new byte[1024]; int length; while ((length = fis.read(bytes)) >= 0) { zos.write(bytes, 0...

    Java用Zip压缩多个文件实例源码.zip

    `ZipOutputStream`是负责创建ZIP文件的输出流,而`ZipEntry`则代表ZIP文件中的每一个条目(即压缩后的文件)。 以下是实现这一功能的基本步骤: 1. **创建ZipOutputStream对象**:首先,你需要创建一个`...

    Zip压缩和解压文件

    在上述代码中,我们创建了一个ZipOutputStream实例,然后遍历源文件列表,为每个文件创建一个新的ZipEntry,并将其写入Zip流。文件内容被读取并写入ZipOutputStream,完成文件的压缩。 解压Zip文件则相对简单,可以...

Global site tag (gtag.js) - Google Analytics