我正在创建一个Windows应用程序,并且需要传递一个编码的URL。但我不确定如何在WinForms C#中进行编码?
发布于 2011-05-21 11:09:49
如果需要对查询字符串的数据进行URL编码,可以使用Uri.EscapeDataString,或者,如果您不介意引用System.Web,也可以使用HttpUtility.UrlEncode
var rawString = @"this & that";
var uriEncoded = Uri.EscapeDataString(rawString);
var httpUtilityEncoded = HttpUtility.UrlEncode(rawString);
它们非常相似,但可以在特殊字符的编码方式上产生微妙的不同结果,如空格:
Console.WriteLine(uriEncoded);
// uriEncoded = "this%20%26%20that"
Console.WriteLine(httpUtilityEncoded);
// httpUtilityEncoded = "this+%26+that"
发布于 2011-05-21 10:47:42
发布于 2017-09-15 16:55:11
你有没有尝试过:
var url = System.Net.WebUtility.UrlEncode(string);
您不需要依赖于System.Web,您可以在PCL中使用它,我在我的Xamarin forms项目中使用了它。
https://stackoverflow.com/questions/6079290
复制相似问题