Advertisement
asence

Read XML -> parse into object

Nov 27th, 2019
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.93 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.IO;
  11. using System.Xml;
  12.  
  13. [OpenFileDalog.cs]
  14. namespace Artikelübersicht
  15. {
  16.     class OFD : Form
  17.     {
  18.         public OFD()
  19.         {
  20.         }
  21.  
  22.  
  23.         public string OpenDialog(string verzeichnis, TextBox box, Label pfad)
  24.         {
  25.  
  26.             OpenFileDialog Explorer = new OpenFileDialog
  27.             {
  28.                 InitialDirectory = verzeichnis,
  29.                 Title = "Datei auswählen",
  30.                 DefaultExt = "xml",
  31.                 Filter = "xml files (*.xml)|*.xml"
  32.  
  33.             };
  34.  
  35.             if (Explorer.ShowDialog() == DialogResult.OK)
  36.             {
  37.                 box.Text = Explorer.FileName;
  38.                 pfad.Text = Explorer.FileName;
  39.             }
  40.  
  41.             string dateiverzeichnis = box.Text;
  42.             string dateiName = Path.GetFileName(dateiverzeichnis);
  43.  
  44.             XML xml = new XML();
  45.             xml.XMLAuslesen(pfad.Text);
  46.  
  47.             return dateiName;
  48.  
  49.         }
  50.  
  51.         private void InitializeComponent()
  52.         {
  53.             this.SuspendLayout();
  54.             //
  55.             // OFD
  56.             //
  57.             this.ClientSize = new System.Drawing.Size(284, 261);
  58.             this.Name = "OFD";
  59.             this.Load += new System.EventHandler(this.OFD_Load);
  60.             this.ResumeLayout(false);
  61.  
  62.         }
  63.  
  64.         private void OFD_Load(object sender, EventArgs e)
  65.         {
  66.  
  67.         }
  68.     }
  69.  
  70. }
  71.  
  72. [Form1.cs]
  73.     public partial class Artikelübersicht : Form
  74.     {
  75.         string verzeichnis;
  76.         int num;
  77.  
  78.         OFD ofd = new OFD();
  79.  
  80.         public Artikelübersicht()
  81.         {
  82.             InitializeComponent();
  83.         }
  84.  
  85.         private void btn_importXML_Click(object sender, EventArgs e)
  86.         {
  87.             OFD ofd = new OFD();
  88.             verzeichnis = textBox_verzeichnis.Text;
  89.  
  90.  
  91.             tb_Dateiname.Text = ofd.OpenDialog(verzeichnis, tb_Dateiname, label_pfad);
  92.         }  
  93.  
  94.         private void btn_xmlAusgabe_Click(object sender, EventArgs e)
  95.         {
  96.             XML xml = new XML();
  97.  
  98.  
  99.             tb_xmlAusgabe.Text = xml.Ausgabe();
  100.         }
  101.  
  102.         private void btn_Arbeitsverzeichnis_Click(object sender, EventArgs e)
  103.         {
  104.             MessageBox.Show("Arbeitsverzeichnis");
  105.         }
  106.  
  107.     }
  108. }
  109.  
  110. [XML.cs]
  111.     class XML
  112.     {
  113.         XmlDocument reader;
  114.         Elektrofahrzeuge fahrzeug;
  115.         public XML() { }
  116.  
  117.         public void XMLAuslesen(string dateiname)
  118.         {
  119.             ArrayList efahrzeugListe = new ArrayList();
  120.  
  121.             reader = new XmlDocument();
  122.             reader.Load(dateiname);
  123.  
  124.             foreach (XmlNode readerXML in reader.SelectNodes("/Elektrofahrzeuge/*"))
  125.             {
  126.                 fahrzeug = new Elektrofahrzeuge(readerXML["Marke"].InnerText, readerXML["Modell"].InnerText, readerXML["Kilometerstand"].InnerText, readerXML["Leistung"].InnerText, readerXML["Sitzplaetze"].InnerText);
  127.  
  128.                 efahrzeugListe.Add(fahrzeug);
  129.             }
  130.  
  131.             Elektrofahrzeuge.Arrayliste = efahrzeugListe;
  132.  
  133.         }
  134.  
  135.         public string Ausgabe()
  136.         {
  137.             string text = "Marke\t\tModell\t\tKilometerstand\tLeistung\t\tSitzplaetze\r\n\r\n\r\n";
  138.             foreach (Elektrofahrzeuge item in Elektrofahrzeuge.Arrayliste)
  139.             {
  140.                 text += item.Marke;
  141.                 text += "\t\t";
  142.                 text += item.Modell;
  143.                 text += "\t\t";
  144.                 text += item.Kilometerstand;
  145.                 text += "\t\t";
  146.                 text += item.Leistung;
  147.                 text += "\t\t";
  148.                 text += item.Sitzplatze;
  149.                 text += "\r\n";
  150.             }
  151.             return text;
  152.         }
  153.  
  154.     }
  155. }
  156.  
  157.  
  158. [Elektrofahrzeuge.cs]
  159.     class Elektrofahrzeuge
  160.     {
  161.  
  162.         public static ArrayList Arrayliste;
  163.  
  164.  
  165.         string marke;
  166.         string modell;
  167.         string kilometerstand;
  168.         string leistung;
  169.         string sitzplaetze;
  170.  
  171.         public Elektrofahrzeuge()
  172.         {
  173.  
  174.         }
  175.  
  176.         public Elektrofahrzeuge(string Marke, string Modell, string Kilometerstand, string Leistung, string Sitzplaetze)
  177.         {
  178.             this.marke = Marke;
  179.             this.modell = Modell;
  180.             this.kilometerstand = Kilometerstand;
  181.             this.leistung = Leistung;
  182.             this.sitzplaetze = Sitzplaetze;
  183.  
  184.  
  185.         }
  186.  
  187.  
  188.         public string Marke { get => marke; set => marke = value; }
  189.         public string Modell { get => modell; set => modell = value; }
  190.         public string Kilometerstand { get => kilometerstand; set => kilometerstand = value; }
  191.         public string Leistung { get => leistung; set => leistung = value; }
  192.         public string Sitzplatze { get => sitzplaetze; set => sitzplaetze = value; }
  193.     }
  194. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement