您的位置:首页 > 编程语言 > ASP

Java中导出到Excel实现_aspose.cells

2014-09-03 20:40 781 查看
参考/article/3901405.html

包下载:http://pan.baidu.com/s/1o6ju0ZK,将lib的jar包导入到工程中

。。。

Spring mvc方面参考

/article/8676444.html

/article/8676445.html

使用poi操作excel删除掉Aspose增加的工作簿

导入poi包http://poi.apache.org/download.html#POI-3.10-FINAL

根目录下有这个包http://pan.baidu.com/s/1nt5HQWx

因为没破解的ASPOSE.CELLS FOR JAVA 在导出EXCEL 完毕以后 会多加一个 SHEET 然后写上 Evaluation Only. Created with Aspose.Words.Copyright 2003-2011 Aspose Pty
Ltd.
所以我就像可不可以在生成EXCEL以后把 多余的SHEET 给删了呢。发现通过ASPOSE.CELLS FOR JAVA自带的Workbook类删不掉,没办法我就用了POI(poi-bin-3.9-20121203)(POI不懂的就百度一下 非常多)
下面贴出实现代码:
/**
* 向客户端返回excel
*
* @param request
* @param response
* @param wb
* @throwsException
*/
protected
void
sendReport(HttpServletRequest request,
HttpServletResponseresponse, Workbook wb) throws Exception {
//wb.save(response.getOutputStream(), wb.getFileFormat());
//------------------------------------------------------------------------
//wb.save(response.getOutputStream(), wb.getFileFormat());
// 该方法是aspose的原生导出方法,但是会在excel最后加上一个sheet,由于没找到破解的而又希望用到aspose的强大功能
// 只好曲线救国在生成excel以后通过poi把excel最后一个sheet删掉就可以了

// 定义内存流
ByteArrayOutputStreambos = null;
ByteArrayInputStreambis = null;
try {

// 将excel写入内存中,这时内存中的excel就已经加上了sheet
bos= newByteArrayOutputStream();
wb.save(bos,wb.getFileFormat());

// 通过POI读取内存中的excel
bis= newByteArrayInputStream(bos.toByteArray());
HSSFWorkbookxwb =
newHSSFWorkbook(bis);

// 删掉aspose生成的试用标记
xwb.removeSheetAt(xwb.getNumberOfSheets()- 1);

// 设置显示excel第一页
xwb.setActiveSheet(0);

// 向客户端输出
xwb.write(response.getOutputStream());
}catch(Exception e) {
e.printStackTrace();
}finally {
bos.close();
bis.close();
}

}

导出的excel 就没有默认 Evaluation Only. Created with Aspose.Words.Copyright 2003-2011 Aspose Pty
Ltd.


源代码:http://pan.baidu.com/s/1qWug5TM

部署到tomcat运行localhost:8080/TestAspose/hello.do
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: