myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Grundlagen von C# » Einzelnen Wert aus XML auslesen
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Einzelnen Wert aus XML auslesen

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
max_78 max_78 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.01.2019
Beiträge: 3
Entwicklungsumgebung: VB.NET Umstieg Basic auf C#
Herkunft: Österreich


max_78 ist offline

Einzelnen Wert aus XML auslesen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

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-Code:
<?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?

Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von max_78 am 03.01.2019 19:55.

03.01.2019 19:43 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.262
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi,

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

Mach einfach wenigstens für eine Stunde ein XML Tutorial und Du hast Dein Ergebnis. Daumen hoch
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
03.01.2019 19:49 Beiträge des Benutzers | zu Buddylist hinzufügen
max_78 max_78 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.01.2019
Beiträge: 3
Entwicklungsumgebung: VB.NET Umstieg Basic auf C#
Herkunft: Österreich

Themenstarter Thema begonnen von max_78

max_78 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

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.
03.01.2019 20:00 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.262
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von max_78:
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. Daumen hoch

Zitat von max_78:
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.

Zitat von max_78:
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.
03.01.2019 20:06 Beiträge des Benutzers | zu Buddylist hinzufügen
max_78 max_78 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.01.2019
Beiträge: 3
Entwicklungsumgebung: VB.NET Umstieg Basic auf C#
Herkunft: Österreich

Themenstarter Thema begonnen von max_78

max_78 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Danke für deine Links, ich sehe mir die mal an!
03.01.2019 20:08 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 11 Monate.
Der letzte Beitrag ist älter als 11 Monate.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 15.12.2019 04:08