使用法语字符编码的网址

时间:2011-05-02 13:57:39

标签: c# .net web-services

我需要通过webservice传递特殊字符。我用了代码

  

HttpUtility.UrlEncode(“french character”)

但如果字符串包含双引号

,则编码无法正常工作

例如:HttpUtility.UrlEncode("é")

它编码很好。但没有正确解码

......提前感谢......

4 个答案:

答案 0 :(得分:7)

法语字符é

Url encoding%E9

当我们使用

  

HttpUtility.UrlEncode( “E”)

我们将输出设为%c3%a.

  

HttpUtility.UrlEncode( “E”,   System.Text.Encoding.GetEncoding( “ISO-8859-1”)

给出正确的编码输出,即%E9

答案 1 :(得分:2)

我看不出你的问题是什么。这段代码:

Console.WriteLine(System.Web.HttpUtility.UrlEncode("something enclosed \"in quotes\""));

输出此结果:

something+enclosed+%22in+quotes%22

正如它应该的那样,没有\字符。那究竟是什么问题呢?

答案 2 :(得分:0)

String output = new String(input.getBytes(),"UTF-8");

答案 3 :(得分:-2)

编码正常,请尝试:

  

HttpUtility.UrlDecode(HttpUtility.UrlEncode( “somecodes \”“))