网页功能: 加入收藏 设为首页 网站搜索  
Java学习:一个压缩文件的例子
发表日期:2004-09-02作者:iceandfire[转贴] 出处:CSDN  

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

/**
* @(#) 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压缩中可以不把文件路径压缩进?BR>  *
* @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读取文件中含有中文的解决办法
  Java读取文件中含有中文的解决办法
  简单加密/解密方法包装, 含encode(),de..
  EJB 3.0规范全新体验
  java简单的获取windows系统网卡mac地址
  让Java程序带着JRE一起上路
  抢先体验"野马"J2SE6.0
  Java连接各种数据库的实例
  Java连接各种数据库的实例
  JAVA的XML编程实例解析
  Java学习从入门到精通(附FAQ)
  新手必读:Java学习的捷径
最新分类信息我要发布 
最新招聘信息

关于我们 / 合作推广 / 给我留言 / 版权举报 / 意见建议 / 广告投放  
Copyright ©2003-2024 Lihuasoft.net webmaster(at)lihuasoft.net
网站编程QQ群   京ICP备05001064号 页面生成时间:0.0106