c# html 解码,C#,.Net Core Escape、Url编码与解码

2019-11-14 更新

不知道大家有没有注意过  字符串保存到数据库里是

545ea90dce01def55ff9a90c6602103c.png

这样的一段字符

要引用.net 自带的DLL   Microsoft.JScript

这字符是  Escape编码

//Escape编码,同js

public static string Escape(string str)

{

return Microsoft.JScript.GlobalObject.escape(str);

}

//UnEscape解码,同js

public static string UnEscape(string str)

{

return Microsoft.JScript.GlobalObject.unescape(str);

}

下面是 .net Core

1.URL 编码解码

string result1 = HttpUtility.UrlEncode("张三丰");

Console.WriteLine(result1); //

string result2 = HttpUtility.UrlDecode(result1);

Console.WriteLine(result2); // 张三丰

HttpUtility.UrlDecode +号变成了空格,有人看到什么都没有以为消失了

可能编码时用的是 string s1= Microsoft.JScript.GlobalObject.escape("A+B");这个编码时,不会对+号进行编码,然后用HttpUtility.UrlDecode解码时+(加号)就变成了空格,解决办法是 HttpUtility.UrlDecode(s1.Replace("+", "+")),这样就可以了

2.获取URL参数键值对

string path = "name=zhangsan&age=13";

NameValueCollection values = HttpUtility.ParseQueryString(path);

Console.WriteLine(values.Get("name"));// zhangsan

Console.WriteLine(values.Get("age")); // 13

3.HTML 编码解码

string html = "

张三丰

";

string html1 = HttpUtility.HtmlEncode(html);

Console.WriteLine(html1); // <h1>张三丰</h1>

string html2 = HttpUtility.HtmlDecode(html1);

Console.WriteLine(html2); //

张三丰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值