![]() |
Re: XML mit C#
Ups. Da kommt wieder meine C# Unerfahrenheit zum Vorschein. :oops:
Jetzt bekomme ich zwar den Namen: lblCurProject.Text = node.Name; aber mit node.Value keinen Wert. |
Re: XML mit C#
Das ist nicht weiter verwunderlich. In der Hilfe steht zu XmlNode.Value:
XmlNode.Value Eigenschaftenwert Der zurückgegebene Wert hängt vom NodeType des Knotens ab: Attribute: Der Wert des Attributs. CDATASection: Der Inhalt des CDATA-Abschnitts. Comment: Der Inhalt des Kommentars. Document: NULL (Nothing in Visual Basic). DocumentFragment: NULL (Nothing in Visual Basic). DocumentType: NULL (Nothing in Visual Basic). Element: NULL (Nothing in Visual Basic). Auf den Wert des Elementknotens kann über die XmlElement.InnerText-Eigenschaft oder die XmlElement.InnerXml-Eigenschaft zugegriffen werden. Entity: NULL (Nothing in Visual Basic). EntityReference: NULL (Nothing in Visual Basic). Notation: NULL (Nothing in Visual Basic). ProcessingInstruction: Der gesamte Inhalt mit Ausnahme des Zieles. Text: Der Inhalt des Textknotens. SignificantWhitespace: Die Leerraumzeichen. Leerraum kann aus einem oder mehreren Leerzeichen, Wagenrückläufen, Zeilenvorschüben und Tabstopps bestehen. Whitespace: Die Leerraumzeichen. Leerraum kann aus einem oder mehreren Leerzeichen, Wagenrückläufen, Zeilenvorschüben und Tabstopps bestehen. XmlDeclaration: Der Inhalt der Deklaration (d. h. alle Zeichen zwischen <?xml und ?>). PS: Will heißen
Code:
XMlDocument xmlDoc = new XmlDocument();
XmlDocument.LoadXML(xmlstring); XmlNode node = xmlDoc.SelectSingleNode("/xml/project/internername"); MessageBox.Show(node.InnerText); |
Re: XML mit C#
Hallo Luckie,
als Lektüre zu XML kann ich dir das Buch "XML essential" von AddisonWesley empfehlen... (ISBN- 3-8273-1769-x, absolut genial, DAS XML-Buch in meinen Augen). Willst Du über DOM oder SAX gehen ??!?! In .net gibt es (meines Wissens) kein SAX um XML-Docs schnell und effektiv zu lesen, aber nicht wirklich schlimm... probiere mal folgendes aus:
Delphi-Quellcode:
XMLReader xreader = XmlReader.Create("dp.xml");
while (xreader.ReadToFollowing("Knoten") { Console.WriteLine(xreader.ReadString()); } xreader.Close(); :-) thomas |
Re: XML mit C#
Wenn ich im Konstruktor auch einen String übergeben kann, dann wäre das eine alternative. Aber so klappt es auch schon prima.
|
Re: XML mit C#
Zitat:
|
Re: XML mit C#
Eine letzte Frage zum Thema, dann haben wir es geschafft. Wie kann ich Attribute zu einem Element hinzufügen und wieder auslesen?
XML-Code:
Irgendwie so habe ich es versucht.
XmlDocument xml = new XmlDocument();
XmlNode msg = xml.AppendChild(xml.CreateNode(XmlNodeType.Element, "message", "")); XmlAttribute attr = Und wie kann ich kontrollieren, ob es geklappt hat? Stehen die Attribute dann auch in xml.InnerText:
Code:
Console.WriteLine(xml.InnerXml);
|
Re: XML mit C#
Neue Erkennsnis:
Code:
Ist das so richtig? Denn mit...
XmlDocument xml = new XmlDocument();
XmlNode msg = xml.AppendChild(xml.CreateNode(XmlNodeType.Element, "message", "")); XmlAttribute attr = xml.CreateAttribute("from"); attr.InnerText = xmpp1.User;
Code:
...wird es mir nicht mit ausgegeben.
Console.WriteLine(xml.InnerXml);
|
Re: XML mit C#
Du musst das Attribute auch noch der Node hinzufügen :zwinker:
Code:
...:cat:...
msg.Attributes.Append(attr);
|
Re: XML mit C#
Klingt sinnvoll. Das so was in der Art da irgendwie fehlt, hatte ich mir auf der Toilette auch gerade überlegt. ;)
|
Re: XML mit C#
Deine besten Ideen hast du auf diesem Örtchen, wie? :stupid: Es ist nicht das erste Mal, dass du die Toilette so speziell erwähnst. :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz