Bonjour,
J'ai un problème lors de la lecture d'un fichier xml.
J'essaie de lire ce fichier grâce à l'instruction Load de XMLCursor :
FileCursor := TXMLCursor.Create;
FileCursor.Load('c:\linear.xml');
Jusque la, cela fonctionne, mais le problème arrive lorsque je veux faire un SELECT dans le flux, cela ne marche pas:
FileCursor.Select('/TransXChange/Operators/LicensedOperator').GetValue('OperatorShortName').
Ceci me renvoie du vide alors qu'il y a bien quelque chose dans 'OperatorShortName'.
J'ai trouvé que le problème provennait du premier noeu du fichier:
Ce noeu contient apparemment des liens sur un schema qui permet la validation du document. Je ne connais pas trop le principe mais en tout cas, lorsque j'enleve ces attributs (xmlns,xmlns: xsi,xsi:schemaLocation) de ce noeu, j'arrive à lire le fichier et le SELECT que j'essayais de faire précedemment fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <TransXChange xmlns="http://www.transxchange.org.uk/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.transxchange.org.uk/ http://www.transxchange.org.uk/schema/2.0/TransXChange_registration.xsd" xmlns:apd="http://www.govtalk.gov.uk/people/AddressAndPersonalDetails" xml:lang="en" CreationDateTime="2004-06-09T14:20:00-05:00" ModificationDateTime="2004-06-09T14:20:00-05:00" Modification="new" RevisionNumber="0" FileName="linear.xml" SchemaVersion="2.0" MappingSystem="TOID" LocationSystem="Grid" RegistrationDocument="true">
Donc, auriez vous la solution pour réussir à lire ce type de fichier avec un XMLCursor ?
Je vous remercie d'avance pour votre aide.![]()
Partager