package com.demo.pool;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
public class Demo {
public static void main(String[]args) throws IOException, RowsExceededException, WriteException{
File [] fileArray = new File[10];
for(int i=0;i<10;i++){
File file = new File("D:\\a"+i+".xls");
if(!file.exists())
file.createNewFile();
fileArray[i]=file;
WritableWorkbook book = Workbook.createWorkbook(file);
WritableFont font1 =new WritableFont(WritableFont.createFont("微软雅黑"), 10 ,WritableFont.BOLD);
WritableCellFormat wcf = new WritableCellFormat(font1);
WritableSheet sheet = book.createSheet(" 第一页 "+i, i);
for(int j=0;j<60000;j++){
Label label = new Label(0,j, "Head1", wcf);
Label labe2 = new Label(1,j, "Head1", wcf);
Label labe3 = new Label(2,j, "Head1", wcf);
Label labe4 = new Label(3,j, "Head1", wcf);
Label labe5 = new Label(4,j, "Head1", wcf);
sheet.addCell(label);
sheet.addCell(labe2);
sheet.addCell(labe3);
sheet.addCell(labe4);
sheet.addCell(labe5);
}
book.write();
book.close();
}
File f2=new File("D:\\test.zip");
zip(fileArray,f2);
}
public static void zip(File[] srcfile,File zipfile) throws IOException{
byte[] buf=new byte[1024];
try {
//ZipOutputStream类:完成文件或文件夹的压缩
ZipOutputStream out=new ZipOutputStream(new FileOutputStream(zipfile));
for(int i=0;i<srcfile.length;i++){
FileInputStream in=new FileInputStream(srcfile[i]);
out.putNextEntry(new ZipEntry(srcfile[i].getName()));
int len;
while((len=in.read(buf))>0){
out.write(buf,0,len);
}
out.closeEntry();
in.close();
srcfile[i].delete();
}
out.close();
System.out.println("压缩完成.");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}