JSP学习笔记(四十九):抛弃POI,使用iText生成Word文档
POI操作excel的确很优秀,操作word的功能却不敢令人恭维。我们可以利用iText生成rtf文档,扩展名使用doc即可。
使用iText生成rtf,除了iText的包外,还需要额外的一个支持rtf的包,下载地址:http://prdownloads.sourceforge.net/itext/iText-rtf-2.1.3.jar
会用iText生成pdf的话,生成rtf就很容易了,下面来看一个简单的例子:
Document doc = new Document();
try {
// 定义输出位置并把文档对象装入输出对象中
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
RtfWriter2.getInstance(doc, outputStream);
// 打开文档对象
doc.open();
// 加入文字“Hello World”
doc.add(new Paragraph("HelloWorld"));
// 关闭文档对象,释放资源
doc.close();
HttpServletResponse response = ServletActionContext.getResponse();
response.addHeader("Content-Disposition", "attachment; filename=myfile.doc");
response.setContentType("application/octet-stream");
response.setContentLength(outputStream.size());
ServletOutputStream out = response.getOutputStream();
outputStream.writeTo(out);
out.flush();
} catch (DocumentException e) {
e.printStackTrace();
}
可以对照我的上一篇文章的代码:JSP学习笔记(四十八):使用iText生成pdf文档 ,代码那是非常的相似啊:)
iText API文档可以到这里下载:http://prdownloads.sourceforge.net/itext/iText-docs-2.1.3.tar.gz
iText 官方示例地址:http://itextdocs.lowagie.com/tutorial/