Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用ApachePOI创建excel文件以供下载_Java_Apache Poi - Fatal编程技术网

Java 使用ApachePOI创建excel文件以供下载

Java 使用ApachePOI创建excel文件以供下载,java,apache-poi,Java,Apache Poi,我已经使用ApachePOI创建了一个excel文件。一切都很好。一般来说,文件可以正常下载,但当我直接从弹出窗口打开文件(不保存)时,10次中就有1次,一些完全是垃圾字符显示在浏览器上 我正在使用下面给出的下载代码 OutputStream out = servletResponse.getOutputStream(); servletResponse.setHeader("Content-Disposition", "attachment;filename=" + excelFile

我已经使用ApachePOI创建了一个excel文件。一切都很好。一般来说,文件可以正常下载,但当我直接从弹出窗口打开文件(不保存)时,10次中就有1次,一些完全是垃圾字符显示在浏览器上

我正在使用下面给出的下载代码

OutputStream out = servletResponse.getOutputStream();
servletResponse.setHeader("Content-Disposition", "attachment;filename="
    + excelFileName+".xls");
servletResponse.setContentType("application/vnd.ms-excel");
excelWorkBook.write(out);
out.close();

我怎样才能使它工作?

信息不足。“垃圾”的截图将非常有用。文件是否在Excel中打开并显示垃圾?在
execlWorkBook.write(out)
之后,添加
out.flush()
并查看发生了什么。否。浏览器上只有一些没有样式的随机字符。就像不使用ms-excel在浏览器上意外打开它一样。它是在不同的浏览器上发生的,还是只是一个特定的浏览器显示了错误?这也可能是浏览器问题。浏览器似乎没有接收到内容类型标题。如果您能够可靠地再现这一点,请使用Fiddler、Firebug或Chrome developer工具观察流量,以查看服务器实际发送的内容。