我想知道,如果.NET Framework類庫提供了一種方法或一種方法來efficientlly解碼這種路徑的URL:解碼這種路徑url?
file:///C:/Users/Administrador/Downloads/V%EDdeos
的問題是轉義字符,其中在這個例子中%ED
確實是一個í
我試過System.Web.HttpUtility
Class的解碼器方法,但沒有解決問題。
我想知道,如果.NET Framework類庫提供了一種方法或一種方法來efficientlly解碼這種路徑的URL:解碼這種路徑url?
file:///C:/Users/Administrador/Downloads/V%EDdeos
的問題是轉義字符,其中在這個例子中%ED
確實是一個í
我試過System.Web.HttpUtility
Class的解碼器方法,但沒有解決問題。
HttpUtility.UrlDecode
有一個過載需要參數Encoding
。
你只需要指定latin1編碼(ISO-8859-1):
string input = "file:///C:/Users/Administrador/Downloads/V%EDdeos";
string decoded = HttpUtility.UrlDecode(input, Encoding.GetEncoding("ISO-8859-1"));
謝謝我真的沒有注意到它,只需注意一點:它足以傳遞'Encoding.Default'作爲參數,因爲它包含默認的ANSI代碼頁,則不需要指定拉丁ISO。再次感謝 – ElektroStudios 2014-10-02 19:12:44
@ElektroStudios,yw,但要小心'Encoding.Default',儘管目前的系統代碼頁可能在不同的系統上有所不同。 – 2014-10-02 19:15:39
你試過'System.Uri'? – 2014-10-02 18:15:34
@Daniel A. White現在我試過了,它沒有解決字符格式問題 – ElektroStudios 2014-10-02 18:17:03
MAYBE看看這個問題:http://stackoverflow.com/questions/14327085/querystring-converting-e1-to- ufffd,然後在'RawURL'/URLEncoding? - 只是想着,但從來沒有嘗試過......因此,把它留作評論... – 2014-10-02 18:58:27