2016-06-07 10 views
1

Ich habe eine Log-Datei im XML-Format wieC# zum nächsten Tag überspringen etwas

<log> // skip this node 
    <?xml version="1.0" encoding="UTF-8"?> 
    <qbean logger="main-logger"> 
    </qbean> 
</log> 
<log> // go to this node 
</log> 

Jetzt ReadToNextSibling („log“) eine Ausnahme aus, ein Ich brauche Inhalt von ersten „log“ Tag zu überspringen und zu Nächstes "log" -Tag ohne Ausnahme zu werfen. Gibt es einen Weg?

+0

Dies ist nicht gültig 'xml' Kannst du' Xml' posten und was du bisher versucht hast? –

+0

Ja, das ist kein gültiges XML, aber das Problem liegt immer zwischen einigen der Log Tags, und ich muss diese Tags ignorieren, irgendeinen Vorschlag? –

Antwort

0

Hinweis:

  1. Ihre XML ist ungültig, da die <?xml version="1.0" encoding="UTF-8"?> vor dem Wurzelelement sein muss. Sie können danach suchen und es entfernen, wenn das Ihr Problem behebt. Sie können yourXml.Repalce("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "")
  2. verwenden. Sie müssen ein Stammelement erstellen, damit Ihr XML für das Parsen gültig ist.

Dann können Sie die XmlDocument Klasse verwenden, um die XML-Daten zu analysieren, die Sie haben und überspringen, was Sie wollen. Du brauchst so etwas:

var document = new XmlDocument(); 

document.LoadXml(yourXml); 

document.DocumentElement.ChildNodes[1]