C#實現HttpUtility.UrlEncode輸出大寫字母


在C#中,HttpUtility.UrlEncode("www+mzwu+com")編碼結果為www%2bmzwu%2bcom,由於一些服務器對大小寫敏感,要求結果改為www%2Bmzwu%2Bcom,注意,不是WWW%2BMZWU%2BCOM。

一開始看到這需求,我的注意力就轉移到怎么將www%2bmzwu%2bcom轉為www%2Bmzwu%2Bcom,正則等方法馬上浮現出來,最后發現,一開始思路就錯了,舍本逐末,用HttpUtility.UrlEncode就可以搞定:

public string UrlEncode(string str)
{
    StringBuilder builder = new StringBuilder();
    foreach (char c in str)
    {
        if (HttpUtility.UrlEncode(c.ToString()).Length > 1)
        {
            builder.Append(HttpUtility.UrlEncode(c.ToString()).ToUpper());
        }
        else
        {
            builder.Append(c);
        }
    }
    return builder.ToString();
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM