OVH Cloud OVH Cloud

creer une lib accompagnee de fichiers de donnees

1 réponse
Avatar
Edwin Vancleef
supposons que je veuille creer une lib accompagnee de fichiers de donnees, et que ces fichiers soient dans le meme repertoire que la lib :

repertoire/malib.pm
repertoire/fichier.txt

si je fais appel a malib.pm, elle ne va pas trouver les fichiers de donnees, puisque le chemin courant n'est pas celui de la lib. comment feriez-vous pour resoudre le probleme ?

1 réponse

Avatar
Paul Gaborit
À (at) Thu, 12 Oct 2006 16:13:23 +0200,
Edwin Vancleef écrivait (wrote):
supposons que je veuille creer une lib accompagnee de fichiers de
donnees, et que ces fichiers soient dans le meme repertoire que la
lib :

repertoire/malib.pm
repertoire/fichier.txt

si je fais appel a malib.pm, elle ne va pas trouver les fichiers de
donnees, puisque le chemin courant n'est pas celui de la
lib. comment feriez-vous pour resoudre le probleme ?


(Remarque: vos lignes font plus de 72 caractères !)

Il y a plusieurs méthodes... En voici deux :

1- Inclure les données directement dans le module lui-même après
__END__ et les lire via le filehandle DATA.

2- Utilisez %INC pour trouver le chemin du module concerné et en
extraire le nom du répertoire parent (via le module File::Basename).


--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>