2009-10-25 7 views
2

J'écris avec Delphi 2009 une petite application pour éditer des fichiers HTML. AvecObtenir le chemin relatif correct dans Delphi

HypRef := '../../photos/myjpg.jpg' 
If FileExists(ExpandFileName(HypRef)) then ... 

Je peux savoir si le fichier existe ou non. Y at-il une fonction pour trouver le chemin relatif correct, si FileExists donne une réponse négative?

+1

Je ne comprends pas vraiment votre question? FileExists vous indique si le fichier est présent ou non. Qu'attendez-vous qu'il se passe s'il n'est pas là? Voulez-vous le rechercher? – jpfollenius

+0

Oui, je veux faire une recherche rapide. Quelque chose comme SearchTreeForFile, mais en incluant le répertoire donné ('photos'). – GerhardS

Répondre

10

Je suppose que vous voulez dire par rapport au répertoire du document HTML principal. Vous pouvez appeler SetCurrentDir() dans le répertoire contenant le document HTML principal, ou vous pouvez simplement ajouter ce chemin à la racine relative.

if FileExists(ExtractFilePath(MainDocument) + HypRef) then... 

Vous avez vraiment pas besoin appeler ExpandFileName() depuis le système d'exploitation correctement résoudre le « .. » et « » pièces. Cependant, si vous avez l'intention d'utiliser le chemin pour l'identité, ils doivent tous être cannonalisés en utilisant ExpandFileName().