2010-04-14 2 views
1

J'ai une chaîne xml:XML d'analyse syntaxique de la chaîne

<Test> Result : this is the result</Test> 

Comment puis-je parse XML en utilisant la classe XMLReader pour obtenir « ceci est le résultat » comme une chaîne de retour.

merci!

+0

Ceci est * pas * XML. XML nécessite un en-tête. – ereOn

+0

désolé je n'ai pas mis dans la chaîne xml correctement. " Résultat: Ceci est le résultat" – no9

+0

Les fragments XML ne nécessitent pas d'en-tête, et xmlreader peut très heureusement le lire, en-tête ou non. – dnolan

Répondre

3
var r = System.Xml.XmlReader.Create(new System.IO.StringReader("<Test> Result : this is the result</Test>")) 
while (r.Read()) { 
    if (r.NodeType == XmlNodeType.Element && r.LocalName == "Test") { 
    Console.Write(r.ReadElementContentAsString()); 
    } 
} 
+0

fonctionne, il suffit de remplacer par " Résultat: ceci est le résultat" –

1

il suffit de créer un lecteur XML à l'aide de cette chaîne et l'utiliser pour l'analyse syntaxique

var reader = System.Xml.XmlReader.Create(new System.IO.StringReader(<xmlstring>)) 
+0

quand je fais le "using (lecteur XmlReader = XmlReader.Create (new StringReader (xmlString)))" le lecteur dit qu'il n'y a pas d'attributs. Est-ce que certains1 peuvent me donner un exemple s'il vous plait? – no9

+0

@Dror Helper: Vous devez développer votre réponse pour répondre réellement à la question "Comment puis-je analyser XML en utilisant la classe XMLReader pour obtenir" ceci est le résultat "en tant que chaîne de retour." bit. Vous avez seulement montré un soupçon de la voie à suivre, pas une solution. –