Solution to the garbled file name during java File Download
Solution to the garbled file name during java File DownloadAs a programmer, everyone should have encountered garbled code! This article solves the problem of garbled characters in the names of downloaded java files by yourself: String fileName = "downloaded file name"; String userAgent = request. getHeader ("User-Agent ");
// For IE or IE-based browsers:
If (userAgent. contains ("MSIE") | userAgent. contains ("Trident ")){
FileName = java.net. URLEncoder. encode (fileName, "UTF-8 ");
} Else {
// Non-IE browser processing:
FileName = new String (fileName. getBytes ("UTF-8"), "ISO-8859-1 ");
}
Response. setHeader ("Content-disposition", String. format ("attachment; filename = \" % s \ "", fileName ));
Response. setContentType ("application/vnd. ms-excel; charset = UTF-8 ");
Response. setCharacterEncoding ("UTF-8 ");
That's all! By the way: requests from various browsers. getHeader ("User-Agent"); Output content: chrome: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36
FIREFOX: Mozilla/5.0 (Windows NT 6.1; WOW64; rv: 32.0) Gecko/20100101 Firefox/32.0
IE8: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0 ;. net clr 2.0.50727; SLCC2 ;. net clr 3.5.30729 ;. net clr 3.0.30729; InfoPath.3 ;. NET4.0C ;. NET4.0E)
IE9: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
IE10: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv: 10.0) like Gecko
IE11: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv: 11.0) like Gecko
360 speed mode: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36
360 IE9 mode: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)