Salut, je suis un programmeur débutant qui tente d'utiliser TXMLparser avec Delphi pour lire un petit fichier XML afin de comprendre comment ils fonctionnent. J'ai la structure suivante dans le fichier xml 'parser.xml';problème de programmation avec des fichiers xml dans delphi
<rule>
<alert>priority 3</alert>
<desc> </desc>
<action>beep</action>
</rule>
et moi avons le code suivant dans delphi
VAR
Parser : TXmlParser;
rule, alert: string;
i:integer;
BEGIN
Parser := TXmlParser.Create;
Parser.Normalize := TRUE;
Parser.LoadFromFile ('c:\parser.xml');
Parser.StartScan;
WHILE Parser.Scan DO
CASE Parser.CurPartType OF
ptStartTag,
ptEmptyTag :
For i:=0 TO Parser.CurAttr.Count-1 Do
Begin
rule :=Parser.CurAttr.rule (i);
alert :=Parser.CurAttr.alert (i);
ptContent,
ptCData : // Process Parser.CurContent field here
ptEndTag : // Process End-Tag here (Parser.CurName)
ptPI : // Process PI here
// (Parser.CurName is the target, Parser.CurContent)
END;
Parser.Free;
end.
Je ne comprends pas où, et avec quelle syntaxe (par exemple ou « règle » ou règle) Je suis d'entrer dans les balises xml. J'ai obtenu la base du code du site Web XML, mais la boucle FOR est à moi. Semble fonctionner correctement mais la règle et l'alerte reviennent comme identificateurs non déclarés, même s'ils sont définis dans VAR
entrer et comment entrer les étiquettes et pourquoi les identifiants ne sont pas reconnus serait apprécié.
Merci
Edité pour retester sans les balises "gui" et "pascal", car il s'agit d'une question spécifique à Delphi (pas de Pascal général) et cela n'a absolument rien à voir avec une interface utilisateur graphique. –