| 
         
     
     | 
     | 
    
  
    | 
    [原创]写一个仅仅压缩文件的例子 | 
   
  
     | 
   
  
     | 
   
  
    | 
     作者:未知  来源:月光软件站  加入时间:2005-2-28 月光软件站  | 
   
  
    [原创]写一个仅仅压缩文件的例子
  
/**  * @(#) 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());            }      } } |    |    
 
  | 
   
  
     | 
   
  
     相关文章:相关软件:  | 
   
   
      |