AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Xml

Ein Thema von value is NULL · begonnen am 13. Sep 2010 · letzter Beitrag vom 21. Sep 2010
Antwort Antwort
Benutzerbild von cookie22
cookie22

Registriert seit: 28. Jun 2006
Ort: Düsseldorf
936 Beiträge
 
Delphi XE2 Professional
 
#1

AW: Xml

  Alt 13. Sep 2010, 10:44
das kommt wohl ganz auf die xml compo/unit an.
Gruß
Cookie
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#2

AW: Xml

  Alt 13. Sep 2010, 11:03
danke für die antworten...

hab das mit SimpleXML probiert ich habe aber keine function mit selectsinglenode. habe es deshalb mal mit XML versucht:

Delphi-Quellcode:
program test;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  xml;

var
  a : TXmlDocument;

begin
  try
        a.LoadFromFile('C:\config.xml');
        Writeln(a.GetTag('config\param').CData);
  except
       on e : exception do begin
                            writeln(e.message);
                            halt(1);
                        end;
  end;

end.


bekomme aber immer eine exception

Geändert von mkinzler (13. Sep 2010 um 11:52 Uhr) Grund: dELPHI-tAG EINGEFÜGT
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.337 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Xml

  Alt 13. Sep 2010, 11:16
Schau mal hier im Beitrag #7, ob das etwas hilft...
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.247 Beiträge
 
Delphi 12 Athens
 
#4

AW: Xml

  Alt 13. Sep 2010, 11:21
bekomme aber immer eine exception
Ja, wenn man vergißt das XMLObjekt zu erstellen, dann ist das kein Wunder.

Wobei es immer schön wäre, wenn man den "Text" der Exceptions erfährt.
Meine vermutet aber was mit "Zugriffsverletzung auf Adresse $000000xx".

PS: In meinem himXML-Download befinden sich ein paar Demos und in der CheckLibs.dpr gibt es, unter Anderem, auch einige Beispiele für SimpleXML.


OK, SimpleXML ist etwas anders aufgebaut, da könnte das mit dem DOMDocument stimmen.
Wobei dein Delphi auch MSXML enthält > TXMLDocument aus der Unit XMLDoc.


@stahli: SimpleXML und XPath?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (13. Sep 2010 um 11:32 Uhr)
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#5

AW: Xml

  Alt 13. Sep 2010, 11:34
ah ok, habe jetzt mal folgendes versucht:

Delphi-Quellcode:
var
a : TXmlDocument;

begin
  try
          a := TXMLDocument.Create;
          a.LoadFromFile('C:\config.xml');
          Writeln(a.GetTag('config\param').CData);
  except
          on e : exception do begin
          writeln(e.message);
          halt(1);
          end;
  end;

end.

und bekomme folgendes zurück:

Fehler beim Parsen von Datei 'config.xml' (Zeile 3, Zeichen 9): '<' erwartet, aber '1' gefunden

was meint er damit? mein XML sieht so aus:

<config>
<param>123</param>
</config>

Geändert von mkinzler (13. Sep 2010 um 11:53 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#6

AW: Xml

  Alt 13. Sep 2010, 12:20
so, bin jetzt glaub ich?! ein stück weiter:

Delphi-Quellcode:
uses
  SysUtils,
  xmldoc;

var
a : TXmlDocument;

begin
  try

          a := TXMLDocument.Create(nil);
          a.Active := True;
          a.LoadFromFile('C:\test.xml');

  except
          on e : exception do begin
          writeln(e.message);
          a.Destroy;
          halt(1);
          end;
  end;

end.
jetzt bekomme ich aber die Meldung: CoInitialize wurde nicht aufgerufen.

habe gelesen das ich das for das am anfang und am ende setzen muss. jedoch sagt er mir immer undeclared identifier...
Bin ich am richtigen weg oder am komplett falschen?

LG
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.247 Beiträge
 
Delphi 12 Athens
 
#7

AW: Xml

  Alt 13. Sep 2010, 12:36
Nja, SimpleXML ist halt ein bissl "älter", obwohl ich jetzt nicht wüßte, warum es mit dieser Datei nicht klarkommen sollte.
Wobei die 1 für micht in Zeile 2 Zeichen 8 liegt.

PS: Hier im Forum suchenCoInitialize wurde nicht aufgerufen

Und dann ruft man Destroy eigentlich nicht direkt auf, sondern nutzt Free.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#8

AW: Xml

  Alt 13. Sep 2010, 12:40
hm naja ich machs ja jetzt nicht mit SimpleXML sonder mit XMLDoc dh:

Delphi-Quellcode:
program test;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  xmldoc;

var
a : TXmlDocument;

begin
  try

          a := TXMLDocument.Create(nil);
          a.Active := True;
          a.LoadFromFile('C:\test.xml');

  except
          on e : exception do begin
          writeln(e.message);
          a.Free;
          halt(1);
          end;
  end;

end.
habe versucht das Coinitialize fast an jeder Stelle des codes zu platzieren, das will er aber niergends...
wo gehört das den hin?

LG
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz