java中对excel的使用,使用jxl,webx框架

WritableWorkbook book = null;

book = Workbook.createWorkbook(response.getOutputStream());

 

try {

WritableSheet sheet  =  book.createSheet( " 拣货单 " ,  0 );

int rowIndex = 0;

int totalNum = 0 ;

// NumberFormat nf = new NumberFormat("#.##");

 

String labelName[] = {"序号","商品","货号/商品编码","颜色","尺寸","数量","售价"};

 

//生成表头

//  将定义好的单元格添加到工作表中

for(int i = 0 ; i < labelName.length ; i ++){

sheet.addCell(new Label(i,0,labelName[i]));

}

for(int i = 0 ; i < skus.size() ; i ++){

PaOrderCommoditySku sku = skus.get(i);

 

sheet.addCell(new Label(0,i+1,i+1+""));

sheet.addCell(new Label(1,i+1,sku.getCommodityTitle()));

sheet.addCell(new Label(2,i+1,sku.getSkuCoding()));

sheet.addCell(new Label(3,i+1,StringUtil.isBlank(sku.getSkuColor())?"-":sku.getSkuColor()));

sheet.addCell(new Label(4,i+1,StringUtil.isBlank(sku.getSkuSize())?"-":sku.getSkuSize()));

sheet.addCell(new Label(5,i+1,sku.getSkuAmount().toString() + sku.getCommodityUnit()));

sheet.addCell(new Label(6,i+1,sku.getSkuUnitPrice().toString()));

totalNum += sku.getSkuAmount();

rowIndex = i + 1 ;

}

 

sheet.addCell(new Label(1,rowIndex + 1,"共" + rowIndex + "条"));

sheet.addCell(new Label(5,rowIndex + 1,totalNum + ""));

 

} catch (RowsExceededException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (WriteException e) {

// TODO Auto-generated catch block

e.printStackTrace();

 

}

 

 

response.setContentType("application/vnd.ms-excel");

response.setHeader("Content-Disposition", "attachment; filename=\""+ "filename" + ".xls\"");

 

book.write();

book.close();

 

 

如果是webx框架,一定记得要吧buffed关闭

@Autowired
    private BufferedRequestContext buffered;
 buffered.setBuffering(false);
posted @ 2016-03-15 15:26  蔷薇骑士  阅读(244)  评论(0编辑  收藏  举报