【问题标题】:Issue with HttpUtility.HtmlEncode with other language charactersHttpUtility.HtmlEncode 与其他语言字符的问题
【发布时间】:2011-10-29 08:02:20
【问题描述】:

我试图使用 HttpUtility.HtmlEncode 对 HTML 特殊字符(如 '、"、 等进行编码。但我注意到这也将法语字符(如 (é))编码为在我的 HTML 页面上。我不想这样,我只想编码 '、"、 和其他几个字符。

【问题讨论】:

    标签: c# asp.net encoding


    【解决方案1】:

    这些字符应该看起来不同吗?如果更换它们为什么会出现问题?这是设计使然。您可以查看this 问题以查看更长的讨论。除非您的用户无法正确看到您正在显示的文本,否则出于安全/兼容性原因,您不应该乱用它。

    HtmlUtility 似乎编码了几类字符,其中ISO-8859-1 character set 如果您仍然不希望对特定字符进行编码,则必须为此目的使用string.Replace()

    【讨论】:

      【解决方案2】:

      各种 .NET 文本编码函数因记录不充分和进行奇怪的转换而臭名昭著。在某些情况下,我对Microsoft Anti-XSS library 中的编码函数有更好的运气,但不确定这是否适用于您的特定应用程序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-22
        • 1970-01-01
        • 1970-01-01
        • 2015-05-02
        • 2015-05-13
        相关资源
        最近更新 更多