【发布时间】:2017-06-21 06:50:56
【问题描述】:
以下代码用于下载附件编码中文字符为文件名。
w_inf_src = new File(p_filepath);
w_inf = new FileInputStream(w_inf_src);
p_response.setContentType(w_mime+";charset=UTF-8");
p_response.setContentLength(new Long(w_inf_src.length()).intValue());
p_response.setCharacterEncoding("UTF-8");
p_request.setCharacterEncoding("UTF-8");
p_response.setHeader("Content-disposition",
"attachment;filename=\"" + (new java.net.URI(null, null, p_request, p_filename, null)).toASCIIString() + "\"");
// Download File In Progress
w_outf = p_response.getOutputStream();
w_bof = new BufferedOutputStream(w_outf);
while ( (w_bytes_read = w_inf.read(w_buffer, 0, w_buffer.length)) != -1)
w_bof.write(w_buffer, 0, w_bytes_read);
w_bof.flush();
我也尝试了文件名*=UTF-8'',但不起作用
【问题讨论】: