【问题标题】:Convert XMl string to HTML将 XML 字符串转换为 HTML
【发布时间】:2018-08-24 00:50:23
【问题描述】:

我有一个包含这些字符的 XML 字符串

&lt&#x3b;br /&gt&#x3b;
&lt&#x3b;br /&gt&#x3b;


如何将其转换为真正的 HTML 代码,如

<br /><br />

使用 asp.net C#

【问题讨论】:

标签: c# asp.net


【解决方案1】:

您可以使用Html.Decode 这样做:

@Html.Decode("&amp;lt&#x3b;br &#x2f;&amp;gt&#x3b;&#xa;&amp;lt&#x3b;br &#x2f;&amp;gt&#x3b;&#xa;")

【讨论】:

    【解决方案2】:

    您可以利用内置的 .NET 实用程序来解码 HTML 字符,例如与号 (&)。

    请参阅:HttpUtility.HtmlDecodeWebUtility.HtmlDecode (.NET 4.0+)

    【讨论】:

      【解决方案3】:

      值得注意的是,XML 的编码规则与 HTML 不同(XML 中只有 5 个字符需要编码)。这个函数对于编码 XML 很有用:

      System.Security.SecurityElement.Escape(unencodedString);
      

      我用它来解码编码的 XML(注意 & 符号在列表的最后):

       public static string XmlDecode(string encodedString)
        {
            var workingBuffer = new StringBuilder(encodedString);
            workingBuffer.Replace("&lt;", "<")
                .Replace("&gt;", ">")
                .Replace("&quot;", "\"")
                .Replace("&apos;", "'")
                .Replace("&amp;", "&");
            return workingBuffer.ToString();
        }
      

      现在,如果源代码是 HTML 编码,那么其他答案都是正确的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-23
        • 2018-08-29
        • 1970-01-01
        • 1970-01-01
        • 2012-10-26
        • 2014-08-29
        • 1970-01-01
        相关资源
        最近更新 更多