输出word文档类似像word里面写入html。
jsp页面button调用的js方法:
function test() {
var url = "<%=request.getContextPath()%>/test.do";
url += "&time=" + new Date();
document.formName.action = url;
document.formName.target = "left"; // 根据个人使用情况进行调整
document.formName.submit();
document.formName.target = "_self"; // 根据个人使用情况进行调整
}
Action中的代码(使用的是SSH框架)
// 清楚buffer
response.reset();
// 设施返回文件的类型
response.setContentType("application/vnd.ms-word");
// 设置下载文件的文件名
response.addHeader("Content-Disposition", "attachment", filename="test.doc");
// 创建输出流对象
OutputStream os = response.getOutputStream();
// 创建缓冲字符输出流
BufferedWriter bf = new BufferedWriter(new OutputStreamWriter(os));
bf.write("<HTML>");
bf.newLine(); // 写入一个行分隔符
bf.write("<HEAD>");
bf.newLine();
bf.write("<style type=\"text/css\">");
bf.newLine();
bf.write("body {FONT-SIZE: 12px}");
bf.newLine();
bf.write("</style>")
bf.newLine();
bf.write("<HEAD>");
bf.newLine();
bf.write("<BODY>");
bf.newLine();
bf.write("<CENTER><H2>测试</H2>");
bf.newLine();
bf.write("<TABLE BORDER=1 CELLPADDING=2 CELLSPACING=2 WIDTH=600>");
bf.newLine();
bf.write("<TR>");
bf.newLine();
bf.write("<TD VALIGN=TOP NOWRAP ALIGN=RIGHT><B>测试一</B></TD>");
bf.newLine();
bf.write("<TD VALIGN=TOP NOWRAP>");
bf.write("测试二");
bf.write("</TD>");
bf.newLine();
bf.write("</TR>");
bf.newLine();
bf.write("<TR>");
bf.newLine();
bf.write("<TD VALIGN=TOP NOWRAP COLSPAN=2><B>测试三</B></TD>");
bf.newLine();
bf.write("</TR>");
bf.newLine();
bf.write("</TABLE>");
bf.newLine();
bf.write("<BR>");
bf.newLine();
bf.write("</BODY>");
bf.newLine();
bf.write("</HTML>");
bf.newLine();
bf.flush(); // 刷新该流的缓冲
bf.close();// 关闭流
// 提高处理效率
os.flush();
// 关闭输出流对象
os.close();
还有挺多其他的属性,真正写的时候查下API,根据个人情况改写。