VB.Net将文本转换为WWW表单
我想将文本转换为WWW表单 例如:VB.Net将文本转换为WWW表单,vb.net,encoding,utf-8,httpwebrequest,Vb.net,Encoding,Utf 8,Httpwebrequest,我想将文本转换为WWW表单 例如:@应该是%40,%应该是%25等等 有很好的编码器,但我想在VB.Net中实现 我需要这个用于httpwebrequest,我认为它与x-www-form-urlencoded有关,您可以使用: Dim OriginalURL As String = "http://www.example.com/some file with spaces.php?q1=plus+&q2=at@&q3=svenska språkets 'ö'" Dim Enco
@
应该是%40
,%
应该是%25
等等
有很好的编码器,但我想在VB.Net中实现
我需要这个用于httpwebrequest,我认为它与x-www-form-urlencoded有关,您可以使用:
Dim OriginalURL As String = "http://www.example.com/some file with spaces.php?q1=plus+&q2=at@&q3=svenska språkets 'ö'"
Dim EncodedURL As String = Uri.EscapeDataString(OriginalURL)
在线测试:
如果您只想转义URL的一部分,但仍然保留有效的组件,如
:/=&代码>(等)你会用。不错,但我还是想出了我的答案,那就是System.Web.HttpUtility.UrlEncode(我的字符串)
,不过你的也能帮上忙,谢谢@StefanĐorđević:很高兴您找到了自己的解决方案,但实际上您应该使用Uri.EscapeDataString()
与标准兼容<例如,code>HttpUtility.UrlEncode/-Decode
不能正确转义空格,因为它将空格转换为+
,而不是%20
。