2017-08-30 144 views

回答

1

您可以使用該Uri.EscapeDataString() method

Dim OriginalURL As String = "http://www.example.com/some file with spaces.php?q1=plus+&[email protected]&q3=svenska språkets 'ö'" 
Dim EncodedURL As String = Uri.EscapeDataString(OriginalURL) 

在線測試:https://ideone.com/h5fqm1

如果你只想逃避URL的一部分,但仍保留有效成分,如:/= ? &(等等)你會使用Uri.EscapeUriString()

+0

不錯,但我想出了我的答案'System.Web.HttpUtility.UrlEncode(my_string)',但你也可以幫助,謝謝! –

+0

@StefanĐorđević:很高興你找到了自己的解決方案,但實際上應該使用'Uri.EscapeDataString()'與[** RFC3986 **]兼容(http://tools.ietf.org/html/rfc3986 #section-2.1)標準。 'HttpUtility.UrlEncode/-Decode'不會正確地轉義空格,因爲它將它們變成'+'而不是'%20'。 –

+0

不錯,再次感謝你! –