下载文件时文件名问题中的空白空间

Ume*_*yat 8 java download httpresponse

以下java代码用于通过Web应用程序下载请求的日志文件:

    protected HttpServletResponse response;
....

    response.setContentType("application/octet-stream");
    String filename = OrgName + ".log";
    response.setHeader("Content-Disposition", "attachment; filename= " + filename);
    OutputStream os = response.getOutputStream();
    os.write(getFile());
    os.close();
Run Code Online (Sandbox Code Playgroud)

OrgName包含像"Xyz Pvt Ltd"这样的空间时出现问题,在这种情况下,文件将以名称"Xyz"而不是"Xyz Pvt Ltd.log"下载.第一个空格后的名称部分将被忽略.请注意,文件正确下载,只是名称没有正确显示.有什么我做错了吗?还是标准行为?

环境: Struts 2,Jboss 5.1.0,Mozilla Firefox 3.5.3

San*_*osh 15

我想我找到了你的问题.只需将文件名字符串设置为quoted

response.setHeader("Content-Disposition","attachment; filename=\"" + filename + "\"");
Run Code Online (Sandbox Code Playgroud)

这应该可以解决您的问题.