Die XML-Datei enthält Ergebnisse vom Programm MediaInfo.Exe und sieht ungefähr so aus:
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<Mediainfo version="0.7.58">
<File>
<track type="Video">
<Width>320 pixels</Width>
<Height>240 pixels</Height>
</track>
<track type="Audio">
<Bit_rate_mode>Constant</Bit_rate_mode>
<Bit_rate>16.0 Kbps</Bit_rate>
</track>
</File>
<File>
<track type="Video">
<Width>480 pixels</Width>
<Height>320 pixels</Height>
</track>
<track type="Audio">
<Bit_rate_mode>Constant</Bit_rate_mode>
<Bit_rate>16.0 Kbps</Bit_rate>
</track>
</File>
</Mediainfo>
Mein Programm sieht momentan so aus:
Code: Alles auswählen
Sub test_GetXML
oSFA = createUnoService("com.sun.star.ucb.SimpleFileAccess")
oInStream = oSFA.openFileRead(file:///C:/test.xml)
oDOM = createUnoService("com.sun.star.xml.dom.DocumentBuilder")
oXML = oDOM.parse(oInStream)
oInstream.closeInput
oVideo = oXML.getElementsByTagName("Video")
End Sub
File/Video/Width
File/Video/Height
File/Audio/Bit_rate
Meine Hänger sind
- wie komme ich von <File> zu <File> (in Excel ging das mit For Each xmlNodeFile In xmlNodeMedia.childNodes)
- wie komme ich an die nächste Ebene <track> (Excel: selectSingleNode, nextSibling)
- wie komme ich an die Eigenschaften?
Ich habe schon die Methoden getElementsByTagNameNS und getElementsByTagName gefunden, finde aber noch kein Beispiel, das mir erklärt, wie ich sie anwende. Hat jemand schon Erfahrung mit dem XML-Parser und kann mir hier etwas helfen?