Variabel Wert / Ergebnis in XML Datei schreiben/ausgeben



  • Hallo,

    ich habe ein Programm geschrieben das Ergebnisse verschiedenster Datentypen (int, double, string...) in variabeln schreibt z.b. myInt, myDouble, myString, mySowieso...

    jetzt habe ich einer extra Datei eine Klasse/Funktion erstellt, die mir eine XML Datei konstruiert und schreibt:

    using System;
    using System.Xml;
    
    namespace xml_exporter
    {
    
        public class xml_tool
        {
    
            public static void tel_toXML()
            {
                string dateTime = DateTime.Now.ToString("yyyyMMddhhmmss"); //String mit Datum und Uhrzeit für Dateiname
    
                XmlTextWriter myXmlTextWriter = new XmlTextWriter("C:\\XML-Log_" + dateTime + ".xml", System.Text.Encoding.UTF8);
                myXmlTextWriter.Formatting = Formatting.Indented;
                myXmlTextWriter.WriteStartDocument(true);
                myXmlTextWriter.WriteStartElement("Daten");
    
    		   myXmlTextWriter.WriteComment("Start der Kennwerte");
    
                myXmlTextWriter.WriteElementString("Farbe", "Blau");  //hier noch feste Werte
                myXmlTextWriter.WriteElementString("Struktur:", "Rau");
    			myXmlTextWriter.WriteComment("Farbnummer" ""); //Ab hier sollen nun meine Variabelwerte rein. myINT 
                myXmlTextWriter.WriteElementString("Dichte", ""); //myDouble
                myXmlTextWriter.WriteElementString("Name", ""); //myString
                myXmlTextWriter.WriteElementString("Aktiv", ""); //myBool
    
                myXmlTextWriter.WriteComment("Ende der Kennwerte");
    
                myXmlTextWriter.WriteEndElement();
    
                myXmlTextWriter.Flush();
                myXmlTextWriter.Close();
    
           }
        }
    }
    

    Wie mache ich nun die Übergabe meiner Variabel in die XML Datei,
    dass es in der Datei so ausschaut:

    <Farbnummer> Wert der myInt Variabel </ Farbnummer>
    <Dichte>5.5</ Dichte> etc.

    Egal was ich durchlese, MSDN, Openbook etc. Ich find einfach nicht die Antwort auf meine einfache Frage 😞 . Es werden nur oft Vorgänge beschrieben, in denen Daten aus einer XML Datei ausgelesen werden etc. Aber ich will einfach nur die Daten meiner Variabeln an die entsprechenden XML <> ... </> Plätze setzen.

    Wenn ich z.B.

    myInt=4; habe und dann myInt.ToString() schreibe wäre das so die korrekte Vorgehensweise für jede Variable ? es funktioniert ja so.

    Gruß
    SuperKato



  • superkato schrieb:

    Wenn ich z.B.

    myInt=4; habe und dann myInt.ToString() schreibe wäre das so die korrekte Vorgehensweise für jede Variable ? es funktioniert ja so.

    Gruß
    SuperKato

    Ja das wäre eine richtige Vorgehensweise.
    Ansonsten kannst du auch die XmlConvert Klasse benutzen, wie es bei stark typisierten Daten empfohlen wird.

    Double price = 19.95;
     writer.WriteElementString("price", XmlConvert.ToString(price));
    

    Weiterhin gibt es Beispiele zum erstellen von XML Dateien mit dem "XmlTextWriter".


Anmelden zum Antworten