我正在使用Java解码由Javascript或Actionscript 3编码的UTF-8字符串时遇到问题。我设置了一个测试用例如下:
所涉及的字符串是“Produktgröße”
当我使用JS / AS3进行编码时,我得到以下字符串:
这段文本是关于产品大小的。当使用JS解码时,它没有任何变化。
所涉及的字符串是“Produktgröße”
当我使用JS / AS3进行编码时,我得到以下字符串:
escape('Produktgröße')
这段文本是关于产品大小的。当使用JS解码时,它没有任何变化。
unescape('Produktgr%F6%DFe')
Produktgröße
所以,我假设JS没有正确编码字符串??
以下JSP生成此输出
<%@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/>
产品规格
产品尺寸
产品大小
产品尺寸
产品大小
你有什么想法,为什么这些语言存在差异,以及为什么JS/AS3的行为与您的预期不同吗?
谢谢。