You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET中HttpUtility.HtmlDecode返回原字符串是什么原因

问题根因

你混淆了HTML编码与URL编码的解码方法,两者适用的编码格式完全不同:

  • HttpUtility.HtmlDecode仅用于解码HTML实体编码内容,这类编码的特征是实体以&开头、;结尾,比如代表<的&lt;、代表>的&gt;,无法识别%开头的百分号编码规则。
  • 你输入的%3CFoobar%3E属于URL百分号编码格式,需要调用对应的URL解码方法才能得到预期结果。
正确实现代码
// 使用HttpUtility.UrlDecode处理百分号编码
string bar = HttpUtility.UrlDecode("%3CFoobar%3E");
// 解码后得到的结果为 <Foobar>

如果你需要验证HttpUtility.HtmlDecode的效果,可以传入符合HTML实体编码规则的字符串测试:

string htmlDecodeTest = HttpUtility.HtmlDecode("&lt;Foobar&gt;");
// 解码后同样得到结果 <Foobar>

内容的提问来源于stack exchange,提问作者Lenny Will

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 02:39:01