vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
XML Schreiben/Lesen mit einer Zeile 
Autor: Novatlan
Datum: 02.11.19 12:59

Hallo!

Ich nutze seit Jahren den IniReader von mentalis.org (weiß nicht ob ich hier einen link posten darf) für jegliche Datenspeicherungen und wollte für ein neues Projekt jetzt auf ein XML-Format wechseln.
Nach einem vollen Tag Recherchen gestern habe ich leider immer noch nichts ähnlich einfaches gefunden, wo ich mit einer Zeile pro Anweisung ganz einfach Werte lesen und schreiben kann.

Also sowas wie die Deklaration der zu lesenden Datei:
Dim savefile as New XMLFileToRead("pfad zum file").

Wert auslesen:
irgendeinstring = savefile.ReadString(Einstellungen/Bildschirm/Auflösung)
was dann eben aus der Baumstruktur den entsprechenden Wert lesen würde

Wert schreiben:
savefile.Write(Einstellungen/Bildschirm/Auflösung,"1920*1080")

Ich stelle mich vermutlich einfach nur saudoof an, aber ich finde nur wahnsinnig komplizierte Lösungen, mit seitenlangen Codeschnipseln. So ging es mir schon vor Jahren, als ich mal auf XML wechseln wollte.

INI-Dateien waren immer super einfach zu lesen und zu schreiben, aber ich würde schon lieber XML benutzen...

Kennt jemand eine ähnlich einfache Methode, um XML-Dateien lesen und schreiben zu können?

Besten Dank im Voraus!!!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: XML Schreiben/Lesen mit einer Zeile 
Autor: Kuno60
Datum: 03.11.19 01:12

Hallo!

Damit man es so einfach hat, wie von dir gewünscht, muss man schon vorher ein paar Klassen, Module usw. erstellen.
Es gibt verschiedene Möglichkeiten XML zu lesen und zu schreiben. Zum Beispiel LinqToXml, Xml-Serialisierung, Xml-Reader/Writer, DataSet.

Hier ein Beispiel mit LinqToXml:
Try
  Dim x = XDocument.Load(pfad)
  Dim h = x...<Auflösung>.First
  Dim auflösung = h.Value 'lesen
  h.Value = "1920*1080" 'schreiben
  x.Save(pfad) 'speichern
Catch ex As Exception
  MsgBox("Fehler beim Speichern!")
End Try
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: XML Schreiben/Lesen mit einer Zeile 
Autor: HenryV
Datum: 04.11.19 16:14

Wieso verwendest du nicht einfach die Anwendungseinstellungen?
-> Zugreifen auf Anwendungseinstellungen (Visual Basic)

Wert auslesen:
irgendeinstring = My.Settings.Aufloesung
Wert schreiben:
My.Settings.Aufloesung = "1920*1080"
Vorteil du kannst der Eigenschaft "Aufloesung" z.B. den Typ System.​Drawing.Size geben.
Wert schreiben:
My.Settings.Aufloesung = New Size(1920, 1080)
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: XML Schreiben/Lesen mit einer Zeile 
Autor: Novatlan
Datum: 04.11.19 16:16

Danke!
Es geht nicht um Anwendungseinstellungen (bzw schon, aber nicht um welche der aktiven Anwendung^^).
Die XML-Dateien sind eher sowas wie Projektdateien, also quasi wie eine docx in Word, eben das Dateiformat, in dem das Programm seine Projekte speichert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: XML Schreiben/Lesen mit einer Zeile 
Autor: Novatlan
Datum: 04.11.19 16:20

Super, danke! Das hilft schonmal weiter!

Jetzt grübele ich daran, wie ich einen Teil einer XML in ein DataGrifView laden kann.
Also wenn meine XML

<root>
<a>
tonnenweise Unterknoten und Elemente
</a>

tonenweise Unterknoten und Elemente

</root>

aussieht, daß ich nur den Content innerhalb von

tonenweise Unterknoten und Elemente

lade, aber nicht was davor oder danach ist.

Außerdem innerhald davon nur bis zu einer bestimmten Tiefe, nicht darüber hinaus.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel