Bonjour,
j'ai une procédure qui appelle une autre procédure pour lire un fichier xml
celle-ci liste un répertoire :
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;
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
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;
fichier = chemin absolu du chemin fichier f:/etc/fichier.xml;
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...