Decoding foreign language characters in url

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-18 09:40:02

问题


I am decoding characters in a URL by using HTTPUtility.URLDecode. Here are the characters I have to decode:

%26 = "&"
%28 = "("
%29 = ")"
%20 = " "
%5B = "["
%5D = "]"
%2C = ","
%23 = "#"
%F3 = "ó" (spanish character)

HTTPUtility.URLDecode works great on all but the last one. I am doing a find/replace on that last character right now, but hoping there is a better automatic way so I don't have to update the find/replace in the future.


回答1:


You should use an overload of HttpUtility.UrlDecode() that accepts an encoding:

HttpUtility.UrlDecode("%F3", Encoding.GetEncoding("ISO-8859-1"))

This assumes it actually is using the ISO-8859-1 encoding. If it uses Windows-1250, you should use that. (These two are very similar, but they are not the same.)



来源:https://stackoverflow.com/questions/7970021/decoding-foreign-language-characters-in-url

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!