我有一個問題URL解碼Java或UTF-8字符串,用Javascript或ActionScript 3編碼。建立一個測試情況如下:Java和JS/AS3之間的URL解碼/編碼UTF-8的差異(bug !?)
有問題的字符串是Produktgröße
當我與JS/AS3編碼,我得到以下字符串:
escape('Produktgröße')
Produktgr%F6%DFE
當我未逸出這與JS我沒有得到任何改變
unescape('Produktgr%F6%DFe')
Produktgr%F6%DFE
所以,這個我認爲JS不正確編碼字符串?
下面的JSP生產本outupt
<%@page import="java.net.URLEncoder"%>
<%@page import="java.net.URLDecoder"%>
<%=(URLDecoder.decode("Produktgr%F6%DFe","UTF-8"))%><br/>
<%=(URLEncoder.encode("Produktgröße","UTF-8"))%><br/>
<%=(URLEncoder.encode("Produktgröße"))%><br/>
<%=(URLDecoder.decode(URLEncoder.encode("Produktgröße")))%><br/>
<%=(URLDecoder.decode(URLEncoder.encode("Produktgröße"),"UTF-8"))%><br/>
Produktgr的ΔE
Produktgr%C3%B6%C3%9FE
Produktgr%C3%B6%C3%9FE
Produktgröße
Produktgröße
任何想法爲什麼我與語言有這樣的差距,爲什麼JS/AS3不像我期望的那樣行事?
謝謝。
謝謝,這是我正在尋找的答案! – user710437 2011-05-25 22:28:02