核型代碼如下:
String fn = "中文檔案名檔案.doc";
String userAgent = request.getHeader("User-Agent").toLowerCase();
//Java下載下傳檔案時IE浏覽器出現檔案名亂碼
// 針對IE或者以IE為核心的浏覽器:
if (userAgent.contains("msie") || userAgent.contains("trident") ) {
fn = java.net.URLEncoder.encode(fn, "UTF-8");
} else {
// 非IE浏覽器的處理:
fn = new String(fn.getBytes("UTF-8"), "ISO-8859-1");
}
response.setContentType("application/octet-stream");
response.setHeader("Content-disposition", "attachment;filename=\"" + fn + "\"");