Java下载文件解决中文乱码问题
发布时间:2020-12-15 07:26:33 所属栏目:Java 来源:网络整理
导读:直接上代码 /** * @desc 下载已存在的文件 */public void sendFile(HttpServletRequest request,HttpServletResponse response,File file,String name) throws IOException { response.setContentType("application/x-download");OutputStream output = resp
直接上代码 /**
* @desc 下载已存在的文件
*/
public void sendFile(HttpServletRequest request,HttpServletResponse response,File file,String name) throws IOException {
response.setContentType("application/x-download");
OutputStream output = response.getOutputStream();
String filenamedisplay = name;
response.addHeader("Content-Length",""+file.length());
String userAgent = request.getHeader("User-agent");
byte[] bytes = userAgent.contains("MSIE") ? name.getBytes() : name.getBytes("UTF-8");
filenamedisplay = new String(bytes,"ISO-8859-1");
response.setHeader("Content-disposition",String.format("attachment; filename="%s"",filenamedisplay));
int BUFSIZE = 65536;
FileInputStream fis=null;
try{
fis= new FileInputStream(file);
int s;
byte[] buf = new byte[BUFSIZE];
while((s = fis.read(buf))>-1){
output.write(buf,s);
}
}catch (Exception ex) {
ex.printStackTrace();
}finally{
output.flush();
fis.close();
output.close();
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |