.net工具類——URL處理
阿新 • • 發佈:2020-08-13
#region URL處理 /// <summary> /// URL字元編碼 /// </summary> public static string UrlEncode(string str) { if (string.IsNullOrEmpty(str)) { return ""; } str = str.Replace("'", "");return HttpContext.Current.Server.UrlEncode(str); } /// <summary> /// URL字元解碼 /// </summary> public static string UrlDecode(string str) { if (string.IsNullOrEmpty(str)) { return ""; } if(str.Contains("%B7")) { str = str.Replace("%B7", "·"); } return HttpContext.Current.Server.UrlDecode(str); } /// <summary> /// 組合URL引數 /// </summary> /// <param name="_url">頁面地址</param> ///<param name="_keys">引數名稱</param> /// <param name="_values">引數值</param> /// <returns>String</returns> public static string CombUrlTxt(string _url, string _keys, params string[] _values) { StringBuilder urlParams = new StringBuilder(); try { string[] keyArr = _keys.Split(new char[] { '&' }); for (int i = 0; i < keyArr.Length; i++) { if (!string.IsNullOrEmpty(_values[i]) && _values[i] != "0") { _values[i] = UrlEncode(_values[i]); urlParams.Append(string.Format(keyArr[i], _values) + "&"); } } if (!string.IsNullOrEmpty(urlParams.ToString()) && _url.IndexOf("?") == -1) urlParams.Insert(0, "?"); } catch { return _url; } return _url + DelLastChar(urlParams.ToString(), "&"); } #endregion