网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.一步一步学习midp2。0游戏编程(.
.protected:“友好的一种”.
.DateCreated 属性.
.配置WebLogic Server集群二(组图).
.Java入门知识.
.用JAVA实现一个分页类.
.Java平台上的CRM系统.
.经典JAVA IDE-Eclips使用秘技.
.关于有状态和无状态会话bean的解.
.Microsoft.Net的Java实现.
.Java 类 体 中 的 this、super 的.
.一个用JAVA写的测算服务器响应速.
.JAVA实例 阴阳历算法.
.了解Java密码扩展的基础.
.RMI规范--第十章.
.java的异常处理机制.
.Mini Java编译器(二).
.Java新手必看之Hello World 攻略.
.Jetspeed开发文档2.
.在Java中定义数据类型.

Java学习:一个压缩文件的例子

发表日期:2008-1-5


  以下为例子的源码,大家可以参考一下:





  /**
  * @(#) ZipFile.Java
  *
  * Copyright 2004 Opensource Develop Team. All rights reserved.
  */
  package com.opensource.zip;

  import java.io.File;
  import java.io.FileInputStream;
  import java.io.FileOutputStream;
  import java.io.IOException;
  import java.util.ArrayList;
  import java.util.List;
  import java.util.zip.ZipEntry;
  import java.util.zip.ZipOutputStream;

  /**
  * 在CSDN帖子http://community.csdn.net/EXPert/topic/3316/3316352.XML?temp=.2301905中看到
  * 关于ZIP压缩文件的问题,在该类中主要演示在ZIP压缩中可以不把文件路径压缩进去
  *
  * @author O.D.T
  * @version 1.0 04/08/27
  */
  public class ZipFile
  {
  public static void main(String[] args)
  {
  ArrayList fileNames = new ArrayList(); // 存放文件名,并非含有路径的名字
  ArrayList files = new ArrayList(); // 存放文件对象
  
  try
  {
  FileOutputStream fileOut = new FileOutputStream("E:/ZipOutOfPath.zip");
  ZipOutputStream outputStream = new ZipOutputStream(fileOut);
  
  File rootFile = new File("E:/temp");
  listFile(rootFile, fileNames, files);      






  for (int loop=0; loop<files.size(); loop++)
  {
  FileInputStream fileIn = new FileInputStream((File)files.get(loop));
  outputStream.putNextEntry(new ZipEntry((String)fileNames.get(loop)));
  byte[] buffer = new byte[1024];
  while (fileIn.read(buffer) != -1)
  {
  outputStream.write(buffer);
  }
  
  outputStream.closeEntry();
  fileIn.close();
  }
  
  outputStream.close();
  }
  catch (IOException ioe)
  {
  ioe.printStackTrace();
  }
  }
  
  static void  listFile(File parentFile, List nameList, List fileList)
  {
  if (parentFile.isDirectory())
  {
  File[] files = parentFile.listFiles();
  for (int loop=0; loop<files.length; loop++)
  {
  listFile(files[loop], nameList, fileList);
  }
  }
  else
  {
  fileList.add(parentFile);
  nameList.add(parentFile.getName());
  }
  }
  }


  
  






上一篇:java新手必读:Java学习的捷径 人气:535
下一篇:深入剖析java类的构造方式 人气:543
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐