繁体   English   中英

如何使用元素将字符串解析为XML?

[英]How to parse my string to XML with &nbsp elements?

我有字符串s ,它看起来:

<root><p>hello world</p>&nbsp;my name is!</root>

我有下一个代码:

try
{
    m_Content = XDocument.Load(new StringReader(s));
}
catch (XmlException ex)
{
    ex.Data["myerror"] = s;

    throw;
}

如您所见,我想加载包含&nbsp;类的所有元素的字符串 并使其成为视图。 但是我有XmlException:

引用未声明的替换为“ nbsp”

有任何想法如何正确执行吗?

添加

ChrisShao提供了一个好主意:将我的字符串放在<![CDATA[标记中,但是很遗憾,它不能解决我的问题。 我有一个很大的字符串,上面有很多标签,也没有几个大文本,我可以在其中见面&nbsp; 元素。 如果使用System.Web.HttpUtility.HtmlDecode我将丢失所有这些元素并获取“”字段。

响应您的“ 添加”部分。 您获得的空白( " " )字段是&nbsp;正确表示形式&nbsp; 何时渲染。 正确编码&nbsp; 在xml中使用的是&#160; [ 参考 ]。

如果您真的想看&nbsp; 当字符串加载到XDocument ,请使用“ &amp;对“&”字符( & )进行编码,而不要使用" " 替换&nbsp; &amp;nbsp; [ 参考 ]。

使用System.Web.HttpUtility.HtmlDecode或System.Net.WebUtility.HtmlDecode

我认为您应该将字符串放入CDATA块中,如下所示:

<root><![CDATA[<p>hello world</p>&nbsp;my name is!]]></root>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM