Hi,
ich habe ein Problem, dessen lösung mir durch das lesen der anderen Forenbeiträge gänzlich unmöglich war, weil es eigentlich ein ganz banales Problem ist^^:
Ich lese mit einer Funktion
eine XMLDatei folgenden Typs aus
Zitat:
<vereinsdaten>
--<saison>1</saison>
----<vereine>
------<verein id="1" manager="1">
--------<liga>1</liga>
------</verein>
------<verein id="2" manager="2">
--------<liga>2</liga>
------</verein>
----</vereine>
</vereinsadaten>
und erhalte an folgender Stelle eine Zugriffsverletzung:
Delphi-Quellcode:
function TForm4.Phase1:boolean;
var x:integer;
NewMod,Node:IXMLDOMNode;
Begin
For x:=1 to 100 do
Begin Node:=Vereine.documentElement.selectSingleNode('vereine/verein[id="'+inttostr(ListV[x])+'"]/liga'); //In diesem Fall wird hier der verein mit der id="1" abgerufen
If strtoint(Node.text)<>4 then //Hier tritt die Zugriffsverletzung auf
Begin
...
end;
Phase1:=true;
end;
Nun heisst doch aber, dass das Programm überhaupt über die Zeile
Node:=Vereine.documentElement.selectSingleNode('vereine/verein[id="'+inttostr(ListV[x])+'"]/liga');
gekommen ist, dass die Datei, sowie der Knoten "Liga" gefunden wurde, denn sonst gäbe es hier ja schon eine Fehlermeldung, oder?
Aber warum ist er dann nicht in der Lage den Text auszulesen??
Es hat auch nicht funktioniert, als ich versucht habe den Text direkt auszulesen, anstatt den Elternknoten zuerst zu speichern.