压缩文件

package com.inspur; 

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

public class FileUtil {
	
	public static boolean zipFile(String[] inputFile, String output)
	{
		
		boolean isSuccess = true;
		ZipOutputStream zos = null;
		InputStream is = null;

		try
		{
			zos = new ZipOutputStream(new FileOutputStream(output));
			for (String input:inputFile) {
				File file = new File(input);
				System.out.println("ok");
				ZipEntry entry = new ZipEntry(file.getName());
				zos.putNextEntry(entry);
				is = new FileInputStream(file);

				int length = 0;

				int bufferSize = 1024;

				byte[] buffer = new byte[bufferSize];

				while ((length = is.read(buffer, 0, bufferSize)) >= 0)
				{
					zos.write(buffer, 0, length);
				}

			}
			zos.closeEntry();
		}
		catch(IOException e)
		{
			System.out.println("IOException");
			isSuccess = false;
		}
		finally
		{
			 try
	            {
	                if (is != null)
	                {
	                    is.close();
	                }
	            }
	            catch (IOException e)
	            {
	            		isSuccess = false;
	            }
			 try
             {
                 if (zos != null)
                 {
                     zos.close();
                 }
             }
             catch (IOException e)
			 {
            	 	isSuccess = false;
			 }
		}
		
		return isSuccess;
	}
}
		String dataPath = "F:\\work\\7DataQueryEngine\\1221\\test\\1.dat";
        String totalPath = "F:\\work\\7DataQueryEngine\\1221\\test\\total.dat";
        String fileName[] = new String[]{dataPath,totalPath};
        String output = "F:\\work\\7DataQueryEngine\\1221\\test.zip";

        boolean isSuccess = FileUtil.zipFile(fileName,output);
        System.out.println(isSuccess);

你可能感兴趣的:(java)