
然后
OutputStream os = null;
responsesetContentType("application/vndopenxmlformats-officedocumentspreadsheetmlworksheet");
responsesetHeader("Content-Disposition","attachment;filename=" + URLEncoderencode("供应商信息"+new Date()toString(), "UTF-8") + "xslx"); //以下载形式,如果是直接在线打开
// responsesetHeader("Content-Disposition","inline;filename="
//中文文件名请适当转码,后缀名根据创建workbook时的版本决定(2003-HSSFWorkbook-xls;2007-XSSFWorkbook-xlsx)
os = responsegetOutputStream();
workbookwrite(os);
responseflushBuffer();
(io流的关闭和io异常扑捉自行处理,poi生成excel的过程参照poi文档,无非就是sheet,row,cell的 *** 作)一般要直接打开需要客户端
1客户端有EXCEL支持
2客户端浏览器的版本与设置
可寻找一下相关的控件或中间件,看能否变通一下,把EXCEL转成HTML或PDF再展示给用户。(若用户不需要编辑并保持到服务器端的情况)
可试试如下办法:
在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于“Program Files/Microsoft Office/OFFICE11/owssuppdll”。通过这个控件,客户端页面上的JavaScript就可以激活本地的Office软件,来实现打开、编辑Office文档。(另,Office XP应该就已经包含这个ActiveX控件了。)
首先,用Script创建一个本地的对象:
openDocObj = new ActiveXObject("SharePointOpenDocuments2"); // 为了兼容Office XP,可以创建“SharePointOpenDocuments1”
然后,调用openDocObj的相应的方法。比如打开服务器上的一个Office文档:
openDocObjViewDocument(">
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)