【问题标题】:System.Web.HttpUtility.HtmlDecode giving different resultsSystem.Web.HttpUtility.HtmlDecode 给出不同的结果
【发布时间】:2017-08-16 17:23:12
【问题描述】:

这是 C# 中一个不错的简单行:

System.Web.HttpUtility.HtmlDecode("🍺")

它应该返回 ????,如果我从单元测试或 LinqPad 运行它,它会返回。

其他时候它返回🍺,例如,如果我从我的 Asp.Net MVC 项目(在 .Net 4.0 上运行)运行它。如果我从 Visual Studio 2015 的即时窗口运行该行,它也会这样做。

WebUtility.HtmlDecode 返回相同的结果。

Environment.Version 在所有情况下都返回 4.0.30319.42000。

那里有更一致的 HtmlDecode 吗?

【问题讨论】:

  • 等等,一个返回啤酒的函数??霍莉莫莉,这对我来说是新的:D
  • 🍷 返回 ????如果你愿意的话
  • U+1F37A BEER MUG 是一个 Unicode 6.0 字符,为此您至少需要在至少 Windows 8 上运行 .NET 4.5。这并不是说您不能在早期平台上使用 HtmlDecode当然,在内部正确地将该实体分解为其组成代理,但它可能有助于解释差异。

标签: c# asp.net asp.net-mvc .net-4.0


【解决方案1】:

我能够使用 Char.ConvertFromUtf32(127866) 创建修复程序

这确实意味着我必须稍微解析一下该值,但我以前做过。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-17
    • 2015-08-21
    • 2018-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多