Bonjour,
j'ai une procédure qui appelle une autre procédure pour lire un fichier xml
celle-ci liste un répertoire :
celle-ci cherche les informations sur le fichier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 procedure TClass_E_S.TrouverInfoContenu(); Var Chemin : String; Info : TSearchRec; n : Integer; begin //Pour être sur que la barre oblique finisse le nom du chemin Chemin := IncludeTrailingPathDelimiter(NomDossier); //Recherche de la première entrée du répertoire n := FindFirst(Chemin+'*.xml',faAnyFile,Info); While n = 0 do begin LireFichierContenu(NomDossier + Info.Name); n := FindNext(Info); end; FindClose(Info); end;
fichier = chemin absolu du chemin fichier f:/etc/fichier.xml;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 procedure TClass_E_S.LireFichierContenu(Fichier: string); var id, titre, text : IXMLDOMNode; idStr, titreStr, textStr: string; DOMDoc : IXMLDomDocument; begin DOmDoc := CoDOMDocument.Create; DOmDoc.async := false; //Permet de charger un document XML en mode synchrone if DOmDoc.load(Fichier) then begin ShowMessage('Fichier chargé'); end else begin ShowMessage('Impossible de charger le fichier :' + #13#10 + NomDossier); end;
Le problème est que DOmdoc.load(fichier) ne fonctionne pas, au lieu d'exécuter le if, ça passe au else,
est-ce qu'une personne saurait d'ou cela vient? Merci pour votre aide...
Partager