2013-08-12 2 views
0

В XML-документа, я хочу, чтобы получить Нижний узел XML, как я могу получить последние XML-узламXmlDoucment как получить нижние xmlnodes?

<Books> 
    <book> 
    <author> sasi </author> 
    <pdate>2013-01-02</pdate> 
    </book> 
    <book> 
    <author> surya</author> 
    <pdate> 2013-02-02</pdate> 
    </book> 
    <book> 
    <author>dolly</author> 
    <pdate> 2013-04-01</pdate> 
    </book> 
</Books> 

из вышесказанного, я хочу получить последний <book> узел в XML-документе.

+0

Ваш XML недопустим. –

+0

Какой у вас язык программирования? !!! –

+0

C# - мой программирующий язык – Ssasidhar

ответ

0

Попробуйте это:

var xml = @"<Books> 
       <book> 
        <author> sasi </author> 
        <pdate>2013-01-02</pdate> 
       </book> 
       <book> 
        <author> surya</author> 
        <pdate> 2013-02-02</pdate> 
       </book> 
       <book> 
        <author>dolly</author> 
        <pdate> 2013-04-01</pdate> 
       </book> 
      </Books>"; 
var doc = new XmlDocument(); 
doc.LoadXml(xml); 
var node = doc.FirstChild.LastChild; 
Console.WriteLine(node.OuterXml); 

Выходы:

<book><author>dolly</author><pdate> 2013-04-01</pdate></book> 

В качестве альтернативы, вы можете выбрать последний book ребенка под Books элемента:

doc.SelectSingleNode("Books/book[last()]") 

или последнего book элемента нет где они находятся в документе:

doc.SelectSingleNode("//book[last()]"); 
+0

ok alex, я постараюсь и интимный вам – Ssasidhar

+0

Я пробовал var doc = new XmlDocument(); doc.LoadXml (xml); XmlNode xmlns = XD.FirstChild.LastChild; отсюда я не могу получить внутренний текст узла автора – Ssasidhar

+0

Используйте 'node1.SelectSingleNode (« автор »). InnerText'. –