Java文件解压缩示例

时间:2024-08-21 21:27:47 JAVA认证 我要投稿
  • 相关推荐

Java文件解压缩示例

  新一批的考生已经开始备战2016年JAVA认证考试。为了帮助广大考试新手们更加顺利地复习备考,小编整理了JAVA认证复习备考资料,希望能够对大家有所帮助。

  Java实现压缩文件的解压缩操作,缺点是压缩文件内不能含有文件名为中文的的文件,否则会出现如下错误:

  Exception in thread "main" java.lang.IllegalArgumentException: MALFORMED

  at java.util.zip.ZipCoder.toString(Unknown Source)

  at java.util.zip.ZipInputStream.readLOC(Unknown Source)

  at java.util.zip.ZipInputStream.getNextEntry(Unknown Source)

  at com.javatest.techzero.gui.ZipFileDemo.main(ZipFileDemo.java:22)

  代码:

  package com.javatest.techzero.gui;

  import java.io.File;

  import java.io.FileInputStream;

  import java.io.FileOutputStream;

  import java.io.InputStream;

  import java.io.OutputStream;

  import java.util.zip.ZipEntry;

  import java.util.zip.ZipFile;

  import java.util.zip.ZipInputStream;

  public class ZipFileDemo {

  @SuppressWarnings("resource")

  public static void main(String args[]) throws Exception {

  File file = new File("d:" + File.separator + "test.zip");

  File outFile = null;

  ZipFile zipFile = new ZipFile(file);

  ZipInputStream zipInput = new ZipInputStream(new FileInputStream(file));

  ZipEntry entry = null;

  InputStream input = null;

  OutputStream out = null;

  while ((entry = zipInput.getNextEntry()) != null) {

  System.out.println("开始解压缩" + entry.getName() + "文件。。。");

  outFile = new File("d:" + File.separator + entry.getName());

  if (!outFile.getParentFile().exists()) {

  outFile.getParentFile().mkdir();

  }

  if (!outFile.exists()) {

  outFile.createNewFile();

  }

  input = zipFile.getInputStream(entry);

  out = new FileOutputStream(outFile);

  int temp = 0;

  while ((temp = input.read()) != -1) {

  //System.out.println(temp);

  out.write(temp);

  }

  input.close();

  out.close();

  }

  System.out.println("Done!");

  }

  }

【Java文件解压缩示例】相关文章:

Java文件解压缩实例详解201603-04

监理文件资料的类型-监理文件资料分类03-27

什么是DOS文件03-20

学习Java的技巧03-05

java习题及答案03-26

JAVA认证简介03-19

关于Java的import03-16

Java入门基础知识:Java IO(输入/输出)03-07

JAVA认证开源技术:关于Java的对象equals方法03-04