Conris.Utility/Url.Encode.cs
(完整代码) 1KBusing System;
using System.Collections.Generic;
using System.Text;
using System.Web;
using System.Net;
using System.Text.RegularExpressions;
namespace Conris.Utility.Url
{
public class Encode
{
public static string EncodeUrl(string oldUrl)
{
string newUrl = EncodeGuid(oldUrl);
newUrl = EncodeGBcode(newUrl);
return newUrl;
}
/// <summary>
/// 去掉参数中Guid中的"-"不安全的,必须是正确的Url格式
/// </summary>
/// <param name="oldUrl"></param>
/// <returns></returns>
public static string EncodeGuid(string oldUrl)
{
string newUrl = oldUrl;
MatchCollection mc;
Regex r = new Regex(@"\w{8}-\w{4}-\w{4}-\w{4}-\w{12}"); //定义一个Regex对象实例=&
if (oldUrl.IndexOf("?") > 0)
{
mc = r.Matches(oldUrl, oldUrl.IndexOf('?'));
foreach (Match match in mc)
{
newUrl = oldUrl.Replace(match.Value, match.Value.Replace("-", ""));
}
}
return newUrl;
}
/// <summary>
/// 编码Url中的中文
/// </summary>
/// <param name="oldUrl"></param>
/// <returns></returns>
public static string EncodeGBcode(string oldUrl)
{
string newUrl = System.Web.HttpContext.Current.Server.UrlEncode(oldUrl);
string strSpecial = "!\"#$%&'()*+,/:;<=>?@[\\]^`{|}~% ";
foreach (char tmp in strSpecial)
{
newUrl = newUrl.Replace(System.Web.HttpContext.Current.Server.UrlEncode(tmp.ToString()), tmp.ToString());
}
return newUrl;
}
}
}
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
