Laden...

Einzelnen Wert aus XML auslesen

Erstellt von max_78 vor 5 Jahren Letzter Beitrag vor 5 Jahren 1.217 Views
M
max_78 Themenstarter:in
3 Beiträge seit 2019
vor 5 Jahren
Einzelnen Wert aus XML auslesen

Hallo zusammen!

Ich bräuchte Bitte eure Hilfe!
Ich hab bis jetzt Hobbymäßig nur VB.NET Basic programmiert und fange eben erst an C# zu verwenden.
Und hier hab ich bereits mein erstes größeres Problem:
Ich versuche aus einer xml-Konfigdatei nur einen einzigen Wert auszulesen, ich bin seit gestern am googeln und am testen, aber es gelingt mir einfach nicht.
Um ehrlich zu sein, ich hätte mir auch nie gedacht das XML so vielseitig sein kann.

Meine XML sieht so aus:


<?xml version="1.0" encoding="utf-8"?> 
<VISUDAT>
  <Konfig>
    <Port01>
      <Portein>1</Portein>                             <== diesen einen Wert brauche ich
      <PortDefinition>Definitionstext</PortDefinition>
      <PortBezeichnung>Bezeichnung</PortBezeichnung>
    </Port01>
    <Port02>
      <Portein>1</Portein>
      <PortDefinition>Definition Port 02</PortDefinition>
    </Port02>
  </Konfig>
  <Portaktionen>
    <Port01>
      <Aktion0001>BIN         23  HA</Aktion0001>
      <Aktion0002>BIN         24  HA</Aktion0002>
    </Port01>
    <Port02>
      <Aktion0001>BIL         22  Beschreibung</Aktion0001>
    </Port02>
  </Portaktionen>
</VISUDAT>

Wie kann ich nun nur den einen markierten Eintrag auslesen kann?

Hab schon verschiedenes mit XMLReader und XPath probiert, abe es delingt mir einfach nicht.

Ich hoffe ich bin hier mit meiner Frage richtig, falls nicht bitte verschieben.

Danke schon mal im Voraus, Max

Edit:
Kann ich irgendwie die Einrückungen von meiner XML anzeigen lassen damit die Struktur ersichtlich ist?

16.807 Beiträge seit 2008
vor 5 Jahren

Hi,

der Umgang mit XML ist wohl das mit am meisten gezeigte und dokumentierte Beispiel in .NET. ⚠
Dass Du hier nichts findest, ist unglaubwürdig. 🤔

Mach einfach wenigstens für eine Stunde ein XML Tutorial und Du hast Dein Ergebnis. 👍
Das Forum ist weder ein kostenloser Code-Generator noch ersetzt das Forum Eigeninitiative; siehe [Hinweis] Wie poste ich richtig? das Dir auch beim Registrierungsprozess und vor dem posten Deines ersten Themas (dieses) angezeigt wurde.

Google-Suche nach xml tutorial .net

M
max_78 Themenstarter:in
3 Beiträge seit 2019
vor 5 Jahren

Hallo Abt!

Danke für deine schnelle Antwort!

Ich habe meinen XML-Code jetzt richtig formatiert.

Ich erwarte mir hier keine fertigen Lösungen und du hättest deinen Beitrag auch in einem etwas neutralerem Ton schreiben können.

Ich suche sehr viel und versuche immer selbst Lösungen zu finden, aber XML und C# ist mir neu und vielleicht bräuchte ich ja auch nur einen Denkanstoss.

Ich hab mich auch in XML etws eingelesen, aber ich verstehe die Struktur nicht wie ich noch weiter in Childs wechseln kann.

Die Scripte die ich bis jetzt probiert habe sind die Standardscripte die Google auswirft.
So hab ich z.B. alle Einträge von <Konfig> bereits auslesen können, aber wie beschrieben bräuchte ich eben nur den Wert <Portein> von <Port01>.

Weiters habe ich es auch geschafft alle <Portein> auszulesen, aber ich schaffe es nicht zu unterscheiden ob es von <Port01> oder <Port02> der Wert ist.

16.807 Beiträge seit 2008
vor 5 Jahren

Ich erwarte mir hier keine fertigen Lösungen und du hättest deinen Beitrag auch in einem etwas neutralerem Ton schreiben können.

Ich bin nur verantwortlich für das was ich schreibe; nicht wie man es liest. 👍

sind die Standardscripte die Google auswirft.

Nur von Google kopieren hat selten was gebracht; Du musst den Code auch verstehen.
Aber wenn ich nach Google-Suche nach c# xml select single node suche, dann sehe ich auf der ersten Seite 100% funktionierende Beispiele.

So hab ich z.B. alle Einträge von <Konfig> bereits auslesen können, aber wie beschrieben bräuchte ich eben nur den Wert <Portein> von <Port01>.

Hier (How to select a single node from an XML document?) hat sich sogar jemand die Mühe gemacht EXAKT zu beschreiben, wie XPath funktioniert.
Das kannst Du 1:1 auf Dein XML Dokument anwenden.

M
max_78 Themenstarter:in
3 Beiträge seit 2019
vor 5 Jahren

Danke für deine Links, ich sehe mir die mal an!