我在struts1做一个项目。有一个小问题。
我有一份HTML报告,我需要将其导出到MS Word文档并打印出来。我该怎么做?
答案 0 :(得分:2)
您可以考虑使用Apache POI以Microsoft字词输出报告。您还可以参考this link查看如何使用Apache POI完成。一个基本思想是,在扩展Action的类中,使用HttpServletResponse输出文件。例如:
String filename = "words.doc";
p_response.setContentType("application/msword");
p_response.setHeader("Content-disposition",
"Attachment; filename=" + filename);
祝你好运!
答案 1 :(得分:1)
将报告写成简单明了的HTML。然后,谎言到浏览器:
response.setHeader("Content-Disposition", "attachment; filename=\""
+ reportName + ".doc\"");
response.setContentType("application/msword");
report.writeTo(response.getOutputStream()); // Actually writes HTML, not doc.
浏览器将假定它是一个Word文档,并询问用户如何打开它(即使用MS Word或OpenOffice)。 MS Word和OpenOffice都非常聪明,不会被.doc文件的HTML内容所迷惑,并且会打开它供用户编辑。
如果只打印报告,我建议导出PDF,可能使用JasperReports,或者只是给用户提供一个纯HTML页面进行打印。