簡體   English   中英

將 XPath 與 XDocument 一起使用時忽略 CData

[英]Ignore CData when using XPath with XDocument

我想從 XML 中提取數據並通過 XPaths 將其轉換為 DateTime。 我有以下 function:

DateTime? GetXPathDate(string xPath, XDocument xDoc)
{
    DateTime? result = null;
    var element = xDoc.XPathSelectElement(xPath);
    return result;
}

我可以找到該元素,但它包含在 CData 中的問題:

<CarName>
    <![CDATA[XXX Jan]]>
</CarName>

無論如何要通過 XDocument 忽略 CData 部分,還是我需要正則表達式我自己呢?

請嘗試以下概念示例。

c#

void Main()
{
    string elementName = "CarName";
    
    XElement xelem = XElement.Parse("<CarName><![CDATA[XXX Jan]]></CarName>");
    
    XElement x = xelem.DescendantsAndSelf(elementName).FirstOrDefault();
    Console.WriteLine(x.Value);
}

Output

XXX Jan

暫無
暫無

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

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