VB XML-Datei auslesen (durch DTD definierte teile)

electroman

Newbie
Registriert
März 2008
Beiträge
7
Moin Moin,
hab da nen Problem und komme einfach nicht weiter, vielleicht kann mir ja jemand helfen.
Bin nopch ziemlicher Anfänger auf dem gebiet der Programmierung, naja, sagen wir mal eher, dass es eigentlich mein erstes Programm ist:D

Ich bin gerade dabei nen Programm zu schreiben, welches mir bestimmte Zeilen aus nem XML - Dokument in ein neues TXT Dokument schreiben soll. Ich bekomme es nur nicht hin, dass es mir nur bestimmte abschnitte rauskopiert, wie mache ich das?

Ausschnitt aus dem Dokument:
Code:
   <Program>
      <Name>[COLOR="Red"]Security Update for Windows XP (KB927802)[/COLOR]</Name>
      <Manufacturer>Microsoft Corporation</Manufacturer>
      <Install_directory></Install_directory>
      <Uninstall_executable>quotC:\WINXP\$NtUninstallKB927802$\spuninst\spuninst.exequot</Uninstall_executable>
      <URL_info_about>http://support.microsoft.com</URL_info_about>
      <Version>1</Version>
      <Version_major>0</Version_major>
      <Version_minor>0</Version_minor>
      <Installed_on></Installed_on>
      <Uninstalled_on></Uninstalled_on>
      <Registered_to>xxxxxxxxxxxxxxx</Registered_to>
      <Registration_code>xxxxxxxxxxxxxxx</Registration_code>
    </Program>

Ich will dort nur Den Text haben, der Zwischen
Code:
 <Program><Name>und</Name></Program>
steht (hab ich extra rot gemacht, toll, gell?^^). In der Datei gibts noch weitere <Name> s, deshalb muss ich beide DTD s mit reinpacken irgendwie. Ist mir da noch zu helfen?:p
 
Zuletzt bearbeitet:
Mal schauen, also ich bin auf folgendes hier gestoßen, weiß aber nicht, ob und wie ich das anwenden kann:

http://msdn2.microsoft.com/de-de/library/bb979298.aspx

da steht dann so folgendes drin:
Code:
 Private Sub XMLReader() 
   
 ' Wir benötigen einen XmlReader für das Auslesen der XML-Datei 
 Dim XMLReader As Xml.XmlReader _ 
   = New Xml.XmlTextReader("quickie.xml") 
   
 ' Es folgt das Auslesen der XML-Datei 
 With XMLReader 
   
   Do While .Read ' Es sind noch Daten vorhanden 
   
  ' Welche Art von Daten liegt an? 
  Select Case .NodeType 
   
 ' Ein Element 
  Case Xml.XmlNodeType.Element 
   
   Console.WriteLine("Es folgt ein Element vom Typ " & .Name) 
   
   ' Alle Attribute (Name-Wert-Paare) abarbeiten 
   If .AttributeCount > 0 Then 
  ' Es sind noch weitere Attribute vorhanden 
  While .MoveToNextAttribute ' nächstes 
 Console.WriteLine("Feldname: " & .Name & _ 
 " -> " & _ 
 "Feldwert: " & .Value) 
  End While 
   
   End If 
   
   ' Ein Text 
 Case Xml.XmlNodeType.Text 
   Console.WriteLine("Es folgt ein Text: " & .Value) 
   
   ' Ein Kommentar 
 Case Xml.XmlNodeType.Comment 
   Console.WriteLine("Es folgt ein Kommentar: " & .Value) 
   
  End Select 
   
   Loop  ' Weiter nach Daten schauen 
   
   .Close()  ' XMLTextReader schließen 
   
 End With
die ausgabe von dem da lautet so wie ich es verstanden habe dann anscheinend:
Code:
 'Es folgt ein Element vom Typ Personen 
 'Es folgt ein Element vom Typ Person 
 'Feldname: Titel -> Feldwert: Dr. 
 'Feldname: Name -> Feldwert: Meyer 
 'Feldname: Vorname -> Feldwert: Hans 
 'Es folgt ein Element vom Typ Person 
 'Feldname: Titel -> Feldwert: 
 'Feldname: Name -> Feldwert: Schmidt 
 'Feldname: Vorname -> Feldwert: Carlos

Ich weiß aber nicht, wenn jemand das einfach so kurz hinschreiben könnte, wie es funktioniert, dass es nur die richtigen elemente ausspuckt, wäre das toll, da ich es echt net so ganz hinbekommen habe
 
Zurück
Oben