C# 对字符串进行UrlEncode/UrlDecode
//对字符进行UrlEncode编码 string text= System.Web.HttpUtility.UrlEncode("heart", System.Text.Encoding.UTF8); //对字符进行UrlDecode解码 string data = System.Web.HttpUtility.UrlDecode(text, System.Text.Encoding.UTF8);
在c#中,HttpUtility.UrlEncode("www+mzwu+com")编码结果为www%2bmzwu%2bcom,在和Java开发的平台做对接的时候,对方用用url编码后再对其进行MD5加密,url编码之后的字符串为大(www%2Bmzwu%2Bcom)写这样加密出来的字符串就.net平台的不匹配,
以下供上方法就是解决HttpUtility.UrlEncode编码由小写转化为大写字母
/// <summary> /// 对字符进行UrlEncode编码 /// string转Encoding格式 /// </summary> /// <param name="text"></param> /// <param name="encod">编码格式</param> /// <param name="cap">是否输出大写字母</param> /// <returns></returns> public static string UrlEncode(string text, Encoding encod, bool cap = true) { if(cap) { StringBuilder builder = new StringBuilder(); foreach (char c in text) { if (System.Web.HttpUtility.UrlEncode(c.ToString(), encod).Length > 1) { builder.Append(System.Web.HttpUtility.UrlEncode(c.ToString(), encod).ToUpper()); } else { builder.Append(c); } } return builder.ToString(); } else { string encodString = System.Web.HttpUtility.UrlEncode(text, encod); return encodString; } } /// <summary> /// 对字符进行UrlDecode解码 /// Encoding转string格式 /// </summary> /// <param name="encodString"></param> /// <param name="encod">编码格式</param> /// <returns></returns> public static string UrlDecode(string encodString, Encoding encod) { string text = System.Web.HttpUtility.UrlDecode(encodString, encod); return text; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现