解码url中的外语字符

时间:2011-11-01 17:03:36

标签: .net url .net-3.5 decode urldecode

我使用HTTPUtility.URLDecode解码URL中的字符。以下是我要解码的字符:

%26 =“&”
%28 =“”(“ %29 =“)”
%20 =“”
%5B =“[”
%5D =“]”
%2C =“,”
%23 =“#”
%F3 =“ó”(西班牙语字符)

HTTPUtility.URLDecode在除最后一个之外的所有内容上运行良好。我正在对最后一个角色进行查找/替换,但希望有更好的自动方式,所以我不必在将来更新查找/替换。

1 个答案:

答案 0 :(得分:3)

您应该使用an overload of HttpUtility.UrlDecode() that accepts an encoding

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

这假设它实际上使用的是ISO-8859-1编码。如果它使用Windows-1250,您应该使用它。 (这两个非常相似,但它们不一样。)