Dann nutze ich Thread gerade mal weiter. Ich benutze Delphi 5 & OmniXML.
Ich habe folgendes
XML-Grundgerüst:
XML-Code:
<index>
<playlist>
<name>foo</name>
<path>C:\Pfad\bla</path>
</playlist>
[...]
</index>
Nun will ich einen Playlistknoten löschen, wenn dieser einen bestimmten Namen hat. Hierfür benutze ich folgenden Code:
Delphi-Quellcode:
procedure TForm1.Lschen1Click(Sender: TObject);
var node: IXMLNode;
begin
if Assigned(Listview1.Selected) then begin
node := xmlDoc.documentelement.selectSingleNode('/index/playlist[name="'+ListView1.selected.Caption+'"]');
xmlDoc.documentElement.removeChild(node);
end;
Allerdings passiert gar nichts. Durch einen Haltepunkt konnte ich herausfinden, dass 'node' immer leer ist. Ich habe schon viel rumexperimentiert, bin allerdings nicht auf die richtige Lösung gekommen.
Wie muss den XPath (?) korrekt heißen, oder warum ist 'node' leer?
Vielen Dank!