Excel导出 和下载

 利用poi-3.10-20120326.jar包 和工具包sl-common.jar (数据过多会oom)

/** 
	 * @date 2015-9-14
	 * @author li
	 * @Description: (小数据)导出Excel, 大数据导出  zip包 
	 * @param xls_write_Address 导出地址,list 导出的数据   sheetname 页签名称
	 * @param bus
	 * @return void
	 * @throws 
	 */ 
	public void writeExcel( String xls_write_Address,List<Map> list,String sheetname)   {
		 String[] array = new String[]{"开票日期","发票代码","销方税号","销方名称","销方地址及电话","销方开户行及账号","主要主品名称",
				                       "购方税号","购方名称","购方地址及电话","购方开户行及账号","收款人","复核人","发票人","红/蓝单据"};
		 OutputStream os =null;
			
		 try {     	           
				 List<String[]> rows = new ArrayList<String[]>();
				 for(Map data : list) {
				 String[] dataArray = new String[15];
				 dataArray[0] = CollectionUtil.getStringFromMap(data, "cDate");
				 dataArray[1] = CollectionUtil.getStringFromMap(data, "cCode");
				 dataArray[2] = CollectionUtil.getStringFromMap(data, "cTaxNo");
				 dataArray[3] = CollectionUtil.getStringFromMap(data, "cXfname");
				 dataArray[4] = CollectionUtil.getStringFromMap(data, "cXfaddress");
				 dataArray[5] = CollectionUtil.getStringFromMap(data, "cXfbank");
				 dataArray[6] = CollectionUtil.getStringFromMap(data, "cMaingoods");
				 dataArray[7] = CollectionUtil.getStringFromMap(data, "cGfTaxNo");
				 dataArray[8] = CollectionUtil.getStringFromMap(data, "cGfName");
				 dataArray[9] = CollectionUtil.getStringFromMap(data, "cGfaddress");
				 dataArray[10] = CollectionUtil.getStringFromMap(data, "cGfbank");
				 dataArray[11] = CollectionUtil.getStringFromMap(data, "cPayee");
				 dataArray[12] = CollectionUtil.getStringFromMap(data, "cChecker");
				 dataArray[13] = CollectionUtil.getStringFromMap(data, "cMaker");
				 dataArray[14] = CollectionUtil.getStringFromMap(data, "cIsred");

				 rows.add(dataArray);
				 }
				 //简单表头
				 SimpleExcelParam sep = new SimpleExcelParam();
				 sep.setFileName(sheetname);
				
				 sep.setTitle("发票明细列表");
				 sep.setHeaders(array);
				 sep.setAligns(new String[]{"left","left"});
				 sep.setRows(rows);
				 String fileName = sep.getFileName() + "." + FileDownload.SUFFIX_EXCEL;  
					
				 File file =  new File(xls_write_Address);
				 if(!file.getParentFile().exists()){
					 file.getParentFile().mkdir();
				 }
					 file.createNewFile();
				 			  
				  os = new FileOutputStream(file);
				  os = FileDownload.getOutputStream( RequestContext.getResponse(), FileDownload.CONTENT_TYPE_EXCEL, fileName);
					HSSFWorkbook wb = PoiExcelHelper.createSimpleHSSFWorkbook(sep);
					wb.write(os);
					os.close();
				} catch (IOException e) {
					e.printStackTrace();
				}			 				
	}


 xx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值