北京是怎麼翻譯成 %E5%8C%97%E4%BA%AC(GBK到UTF8)

URLEncoder與URLDecoder編碼相互轉換
URLEncoder.encode("北京 東城 東城區", "UTF-8") 會把漢字轉成UTF-8編碼,空格轉成“+”,如:
%E5%8C%97%E4%BA%AC+%E4%B8%9C%E5%9F%8E+%E4%B8%9C%E5%9F%8E%E5%8C%BA

要把“+”換成%20,再調用一次replaceAll()就行了,如:
URLEncoder.encode("北京 東城 東城區", "UTF-8").replaceAll("\+","%20")
結果:
%E5%8C%97%E4%BA%AC%20%E4%B8%9C%E5%9F%8E%20%E4%B8%9C%E5%9F%8E%E5%8C%BA

相互轉換
轉換成編碼:

URLEncoder.encode("北京");

輸出:%E5%8C%97%E4%BA%AC

轉換成漢字:

java.net.URLDecoder.decode("%E5%8C%97%E4%BA%AC","UTF-8");

輸出:北京

取得本機默認的編碼方式名稱:

Charset.defaultCharset().name();

例如:UTF-8

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