当前位置:编程学习 > JAVA >>

java用struts2的inline方式下载excel提示不能打开同名文件

错误框的提示:
       名为“directview.action”的文档已经打开,不能同时打开同名文件,无论他们是否在同一文件夹中
要打开第二份文档,请关闭已经打开的文档,或者重新命名其中的一个文档。

struts2的配置:
                   <action name="directview" class="directviewAction">
    <result type="stream">
       <param name="contentType">application/octet-stream;charset=ISO-8859-1</param>
       <param name="contentDisposition">inline;filename="${downloadFileName}"</param>
       <param name="inputName">downloadFile</param>
       <param name="bufferSize">4096</param>
    </result>
</action>

action代码:
            
         public InputStream getDownloadFile() throws FileNotFoundException {
if (url != null && "yes".equals(url)) {
setEncodeFilePath();
setEncodeFileName();
}
return new FileInputStream(new File(filePath));
}


        public String getDownloadFileName() {
String downFileName = fileName;
try {
downFileName = new String(downFileName.getBytes(), "ISO-8859-1");

} catch (UnsupportedEncodingException e) {

e.printStackTrace();
}
return downFileName;
}

坐等大侠帮助解答,十万火急
--------------------编程问答-------------------- 补充下,应该说是用inline方式直接打开 --------------------编程问答-------------------- 这是excel自己的问题,文件名相同的文件只能打开一个

所以,你知道了吧 --------------------编程问答-------------------- 提示说同名的那个文件名在代码中已经设置为 原来的文件名即fileName
但是错误提示 请求路径成了文件名,有点奇怪了,高手快来啊 --------------------编程问答--------------------
引用 2 楼 easyroom 的回复:
这是excel自己的问题,文件名相同的文件只能打开一个

所以,你知道了吧
+ --------------------编程问答-------------------- 坐等,碰到同样问题,求楼主发解决办法 --------------------编程问答-------------------- 我自己做了个测试,在两个目录下分别建两个同名的xlsx和两个同名的docx,发现word打开同名文件没有提示,而excle则会提示打开同名文件。
补充:Java ,  Java SE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,