簡體   English   中英

從XElement獲取innerText

[英]Get innerText from XElement

嘿伙計們,我有一個我需要解析的XML文件,但僅適用於文本,而不是HTML。 這是一個節點的例子:

<highlights><![CDATA[<ul style="color:#000000;font-size:small;font-family:verdana,geneva,sans-serif"><li>Classy &amp; elegant purse hooks</li><li>Choose from various styles<br></li><li>Stable and reliable</li><li>Makes a great gift!  </li></ul>  ]]></highlights> 

如您所見,CDATA中包含HTML代碼,因此當我執行element.Value時,我也會獲得標簽。 有沒有簡單的方法來獲取文本?

謝謝!

由於CDATA中的數據不是有效的XML,因此可以使用HtmlAgilityPack來解析結果:

XDocument xdoc = XDocument.Load("test.xml");
var html = xdoc.Descendants("highlights").First().Value;

HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
var result = htmlDoc.DocumentNode.InnerText;

輸出:

優雅優雅的錢包鈎從各種風格中選擇穩定可靠的禮品!

<literal id="continer"  runat="server"/>

continer.text=@"<highlights><![CDATA[<ul style="color:#000000;font-size:small;font-family:verdana,geneva,sans-serif"><li>Classy &amp; elegant purse hooks</li><li>Choose from various styles<br></li><li>Stable and reliable</li><li>Makes a great gift!  </li></ul>  ]]></highlights> ";

要么

<div id="continer" runat="server"/>

continer.innerHtml==@"<highlights><![CDATA[<ul style="color:#000000;font-size:small;font-family:verdana,geneva,sans-serif"><li>Classy &amp; elegant purse hooks</li><li>Choose from various styles<br></li><li>Stable and reliable</li><li>Makes a great gift!  </li></ul>  ]]></highlights> ";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM