Java导出excel表格 (五)

2014-11-24 10:53:19 · 作者: · 浏览: 3
Style;
import jxl.format.CellFormat;
import jxl.write.Boolean;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class DemoXls {

/**
* 数据库导出至Excel表格
*/
public static void main(String[] args) {
// 准备设置excel工作表的标题
String[] title = {"编号","产品名称","产品类型","计量类型"};
try {
// 获得开始时间
long start = System.currentTimeMillis();
// 输出的excel的路径
String filePath = "e:\\testJXL2.xls";
// 创建Excel工作薄
WritableWorkbook wwb;
// 新建立一个jxl文件,即在e盘下生成testJXL.xls
OutputStream os = new FileOutputStream(filePath);
wwb=Workbook.createWorkbook(os);
// 添加第一个工作表并设置第一个Sheet的名字
WritableSheet sheet = wwb.createSheet("产品清单", 0);
Label label;
for(int i=0;i // Label(x,y,z) 代表单元格的第x+1列,第y+1行, 内容z
// 在Label对象的子对象中指明单元格的位置和内容
label = new Label(i,0,title[i]);
// 将定义好的单元格添加到工作表中
sheet.addCell(label);
}
// 下面是填充数据
/*
* 保存数字到单元格,需要使用jxl.write.Number
* 必须使用其完整路径,否则会出现错误
* */

ProductDao dao=new ProductDaoImpl();
List list=dao.queryAll();
for(int i=0;i // 填充产品编号
jxl.write.Number number = new jxl.write.Number(0,i+1,list.get(i).getProductId());
sheet.addCell(number);
// 填充产品名称
label = new Label(1,i+1,list.get(i).getProductName());
sheet.addCell(label);
jxl.write.Number type = new jxl.write.Number(2,i+1,list.get(i).getProductTypeId());
sheet.addCell(type);
jxl.write.Number measure = new jxl.write.Number(3,i+1,list.get(i).getMeasureTypeId());
sheet.addCell(measure);
}

// 写入数据
wwb.write();
// 关闭文件
wwb.close();
long end = System.currentTimeMillis();
System.out.println("----完成该操作共用的时间是:"+(end-start)/1000);
} catch (Exception e) {
System.out.println("---出现异常---");
e.printStackTrace();
}
}

}