今天突然遇到一個棘手的問題,就是對於url編碼的轉換。
大家上網的時候常常可以發現我們輸入的漢字在url傳輸的時候是%xx%xx的形式。
如果我們需要提取上面的資訊該怎麼辦呢?如果是透過類似index.aspx?name=%xx%xx還可以透過request取得值。所以不用管那麼多。可是如果這些字元包含在一個位址裡面,而不是參數,怎麼辦?
用Uri.UnescapeDataString()函數轉換後可以得到正確的中文編碼。
string ss = "%e9%ab%98%e6%b8%85%e6%99%b0";
string dd2 = Uri.UnescapeDataString(ss);
Response.Write(dd2);
最後得到結果:「高清晰!」
一點小小的發現,給大家參考一下。不過請教人的發現Java提供了同樣的一個函數。可是沒有想到.net放在uri裡面。
出處:提示符號也玩博客