![]() |
ungleich nil
ich mal wieder.
Mein Programm schmiert ab, wenn ein Attribut kein Value hat, und ich mit einer Schleife alle Attribute durchlaufe und in eine Listbox schreibe. Um dies zu verhindern wollte ich das vorher abfangen, aber es klappt irgendwie nicht.
Delphi-Quellcode:
Fehler : ungleiche Typen
if (xnAttr.NodeValue <> Nil) then begin
|
Re: ungleich nil
Welchen Typ hat den NodeValue?
|
Re: ungleich nil
Hallo,
geht es vielleicht mit:
Delphi-Quellcode:
?
if assigned(xnAttr.NodeValue) then
[edit] das wird auch nicht funktionieren, das assigned auch auf nil prüft, sorry [/edit] Grüße Klaus |
Re: ungleich nil
@Klaus: Wohl kaum weil Assigned nichts anderes macht als auf <>nil zu überprüfen.
|
Re: ungleich nil
Zitat:
xnAttr ist ein IXMLNode |
Re: ungleich nil
Delphi-Quellcode:
wenn die Value ein String ist, was ich annehme, kann das nicht klappen :)
if assigned(xnAttr.NodeValue) then
Delphi-Quellcode:
probier das mal
if assigned(xnAttr) then
|
Re: ungleich nil
Zitat:
Oder mache ich mit NIL was falsch? Fehlermeldung lautet beim parsen : Variante des Typs Null kann nicht in Typ String konvertiert werden. |
Re: ungleich nil
Hi,
bei Varianten:
Delphi-Quellcode:
[edit] In deinem Teil wohl
if IsNotAssigned = Unassigned then
ShowMessage('Unassigned'); if VarIsNull(IsNotAssigned) then ShowMessage('Null'); ![]() Mfg FAlter |
Re: ungleich nil
Zitat:
"Klappt nicht." "Funzt nicht." "Geht nicht." Was soll man damit anfangen? :wall: Es wäre extrem hilfreich zu erfahren, wie sich der Fehler äußert und / oder was für eine Fehlermeldung der Compiler ausgibt. |
Re: ungleich nil
Zitat:
FEHLERMELDUNG BEIM PARSEN: Variante des Typs (Null) kann nicht in Typ (String) konvertiert werden. Fehler taucht bei der Codezeile auf:
Delphi-Quellcode:
nodesubmit := xnAttr.NodeName +' = ' +xnAttr.NodeValue;
|
Re: ungleich nil
NodeValue ist also ein String... oder nicht?
Delphi-Quellcode:
Wenn der Knoten nicht nil ist, kann der String höchstens leer sein!
if xnAttr.NodeValue <> '' then
Sag doch mal kurz welchen Typ NodeValue hat... Edit: Das hat dann ja schon wieder gar nix mit dem zu tun, was du erfragt hast :P |
Re: ungleich nil
Hi,
Herr Doktor, Herr Doktor, alle ignorieren mich. Der nächste Bitte. Hast du es denn schon mit VarIsNull probiert? [edit] @spaxxn: Nein, es ist Variant (siehe Fehlermeldung), und bei der Stringverknüpfung wird diese in String umgewandelt, was fehlschlägt.[/edit] Mfg FAlter |
Re: ungleich nil
Zitat:
|
Re: ungleich nil
Nodevalue sollte ein String sein (meine Vermutung)
Delphi-Quellcode:
nimmt er nicht an.
<> ''
|
Re: ungleich nil
Ist es ein String, ein Objekt oder ein Record? Oder gar ein Variant? Jaja Falter, ich ignoriere dich nit :P
Das müssten wir schon wissen :) |
Re: ungleich nil
Zitat:
|
Re: ungleich nil
Hi,
ich fühl mich so ignoriert. :cry: Schon ![]() Mfg FAlter |
Re: ungleich nil
Klick mal im Quelltext mit der rechten Maustaste auf IXMLNode und dann klicke auf Deklaration suchen.
|
Re: ungleich nil
Zitat:
|
Re: ungleich nil
Musst die Unit Variants dafür einbinden...
|
Re: ungleich nil
Dank euch. Es funtzt. :bouncing4:
Mit Varisnull ist alles in Butter. |
Re: ungleich nil
Da ist der FAlter ja nun zur Kenntnis genommen worden :P
|
Re: ungleich nil
Hi,
:bounce1: Jetzt gehts mir wieder gut. :bounce1: Mfg FAlter |
Re: ungleich nil
Hat doch nur 22 Posts gedauert :lol:
|
Re: ungleich nil
Danke nebenbei,
war auch eines meiner Probleme. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz