下載文件時,爲什麼要使用URLEncoder編碼名稱

因爲下載文件的名稱是通過url傳到客戶端的,url對格式的要求非常嚴格,具體如下

字母數字字符 “a” 到 “z”、”A” 到 “Z” 和 “0” 到 “9” 保持不變
特殊字符 “.”、”-“、”*” 和 “_” 保持不變
空格字符 ” ” 轉換爲一個加號 “+”。

除了上述三種字符,其他所有其他字符都是不安全的,因此首先使用一些編碼機制將它們轉換爲一個或多個字節。然後每個字節用一個包含 3 個字符的字符串 “%xy” 表示,其中 xy 爲該字節的兩位十六進制表示形式。推薦的編碼機制是 UTF-8。但是,出於兼容性考慮,如果未指定一種編碼,則使用相應平臺的默認編碼。

這就是爲什麼要有URLEncoder這樣的工具類了,因爲中文是三種安全字符之外的字符,不允許傳輸。你要是直接傳輸,那麼url就屏蔽掉,所以你必須轉碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章