我正在向瀏覽器發送一個用文件名保存文件的請求。 文件名可能包含空格,所以我用%20
替換所有空格。 Internet Explorer和Chrome將%20
轉移回空格,但Firefox不會。爲什麼? 有沒有辦法讓所有瀏覽器顯示空間?爲什麼Firefox不會將%20轉換爲空格('')?
這是我的代碼:
String codedName = new String(URLEncoder.encode(name, "UTF-8"));
codedName = codedName.replaceAll("\\+", "%20");
response.setHeader("Content-Disposition", "attachment; filename=\"" + codedName+ "\"");
你爲什麼改變encode()的結果? +是URL中空間的常規代碼。 – PhiLho 2010-08-25 09:40:08
是的。但是我越來越多地看到使用%20而不是+,這很奇怪。 – 2011-02-28 07:42:18