java下载文件名乱码的方法:(推荐:java视频教程)

每个浏览器的编码不一样,火狐采用的是base64.ie和谷歌采用的是url编码:

所以我们在设置响应头的时候

Content-Type getServletContext().getMineType(filename);
Content-Disposition accachment;filename=编码后的filename
登录后复制

url编码

立即学习“Java免费学习笔记(深入)”;

name = URLEncoder.encode(filename, "UTF-8");
登录后复制

base64编码

/**
传入文件的名称,进行Base64编码@param fileName@return
*/
public String base64EncodeFileName(String fileName) {
BASE64Encoder base64Encoder = new BASE64Encoder();
try {
return "=?UTF-8?B?"new String(base64Encoder.encode(fileName
.getBytes("UTF-8"))) + "?=";
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
登录后复制

更多java知识请关注java基础教程栏目。

以上就是java下载文件名乱码解决方法详解的详细内容,更多请关注慧达安全导航其它相关文章!

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部