我一直在试图解码%E9(é)。
WebUtility.HtmlDecode("%E9")不起作用。它放了一个?签而不是签。
发布于 2015-09-01 18:59:44
我对此进行了测试,并发现HttpUtility.UrlDecode("%E9")返回您提到的问号。似乎您必须手动指定适当的编码,才能正确地使用%E9编码的值。
你可以试试:
HttpUtility.UrlDecode("%E9", System.Text.UnicodeEncoding.Default);或
HttpUtility.UrlDecode("%E9", System.Text.UnicodeEncoding.UTF7);两者都应该返回您所期望的解码字符。
发布于 2015-09-01 19:23:11
对于Url解码,您应该使用UrlDecode而不是HtmlDecode。另外,您需要指定编码才能工作,因为编码值%E9不是UTF-8值,并且默认情况下UrlDecode返回使用UTF-8解码的字符串。
除了Lukasz的答案之外,您还可以使用:
HttpUtility.UrlDecode("%E9", System.Text.Encoding.GetEncoding("iso-8859-1"));https://stackoverflow.com/questions/32338445
复制相似问题