Einzelnen Beitrag anzeigen

dust258

Registriert seit: 18. Aug 2008
62 Beiträge
 
#1

Leere Rückgabewerte beim Auslesen einer XML mit JVSimpleXML

  Alt 14. Sep 2009, 09:31
Ich habe vor mich langsam von meinen (mehr oder weniger) geliebten INIs zu trennen und und nutze daher zum 1. mal die XML Komponente JVSimpleXML in einem meiner Projekte. Ich habe allerdings folgendes Problem:

Ich kann zwar meine Werte in die XML schreiben, aber beim auslesen bekomme ich nur leere Values zurück...
hier die XML:
Delphi-Quellcode:

- <ComboBoxItems>
- <FrameErrorHandling>
- <cBoxFailDataType>
     <wert1 />
     <wert2 />
     <wert3 />
     <wert4 />
    </cBoxFailDataType>
    <cBoxFailDestOpt1 />
    <cBoxFailDestOpt2 />
    <cBoxFailDestOpt3 />
   </FrameErrorHandling>
  </ComboBoxItems>
und hier der Code mit dem ich versuche die Daten auszulesen:
Delphi-Quellcode:

  loadDataFromFile;
  lXML := TDMXMLAccess.Create(self);
  try
    if ((assigned(SimpleXML.Root)) and
        (assigned(SimpleXML.Root.Items.ItemNamed[inSUnitName])) and
        (assigned(SimpleXML.Root.Items.ItemNamed[inSUnitName].items.itemnamed[inSCBoxName]))) then
    begin
      for i := 0 to SimpleXML.Root.Items.ItemNamed[inSUnitName].items.itemnamed[inSCBoxName].items.Count - 1 do
      begin
        outSLValue.Add(SimpleXML.Root.Items.ItemNamed[inSUnitName].items.itemnamed[inSCBoxName].Items.Item[i].Value);
        // outSLValue ist eine StringList und wird in diesem Fall mit 4 leeren Items gefüllt.
      end;
    end;
  finally
    lXML.free;
  end;
Ich steh echt auf dem Schlauch. "inSUnitName = FrameErrorHandling" und "inSCBoxName = cBoxFailDataType"
  Mit Zitat antworten Zitat