問題
網路怪事2026年10月13日為什麼中文網址複製貼上後,會變成一長串 %E5%8F%B0?
URLUTF-8百分比編碼
詳細說明
網址本來就不收中文
網址的通用規格 RFC 3986 只定義了一小組可以直接出現的字元:英文字母、數字和少數符號。其他字元要用「百分比編碼」(percent-encoding)表示:一個 % 後面接兩位十六進位數字,代表一個位元組。RFC 3986 也寫明,非 ASCII 的文字要先依 UTF-8 轉成位元組,再逐一做百分比編碼。
一個中文字通常變成 9 個字元
常用中文字在 UTF-8 裡多半佔 3 個位元組,所以一個字會變成三組 %XX,總共 9 個字元。「台灣」是 %E5%8F%B0%E7%81%A3,「天氣」是 %E5%A4%A9%E6%B0%A3。MDN 對 encodeURIComponent() 的說明也是同一件事:把每個字元換成代表其 UTF-8 編碼的一到四組跳脫序列。
為什麼網址列看起來還是中文
瀏覽器為了好讀,會在網址列把編碼還原成中文顯示,但實際送出去、複製出來的是編碼後的版本,所以貼到 LINE、Word 或表單裡就變成一長串 %。兩種寫法指向同一個網頁;想讓別人看得懂,可以另外附上頁面標題,或改用短網址。
也有人這樣問
中文網址變亂碼、網址 %E5 是什麼、複製網址出現一堆百分比、URL 編碼 中文、網址 UTF-8 編碼