Limitation nombres de caractères dans chemin fichier

Résolu
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 5 nov. 2005 à 10:11
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 5 nov. 2005 à 15:26
Salut,





La question va peut être paraître stupide mais bon ...

Est il possible d'ouvrir un fichier dont le nombre de caractères constituant le chemin d'accès est supérieur à 237 ?

Est ce une limitation du système de fichiers ? du CLI ? et pourquoi 237 caractères ?



en bref :

opendir("[237 caracteres]"); => fonctionne

opendir("[238 caracteres et +]"); => failed to open ...



infos :

PHP5 CLI

Windows XP SP2 (NTFS)



Merci d'avance pour vos réponses,



Kohntark-

5 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
5 nov. 2005 à 13:46
Mais php essai pe d'accèder au fichier par le dossier $PATH, donc, ça peut faire 18 caractères de plus...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
3
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
5 nov. 2005 à 15:26
Tu as raison Coucou, je viens de constater, juste avant de lire tes
lignes, que j'avais dit une bêtise. En fait, ça plante sur fopen et non
sur opendir, ce qui porte bien le nombre de caractères à 255 max :

fopen("[237 car pour le chemin complet]\test document.txt","rb");



Autant pour moi.

A noter que Windows n'est pas très efficace sur la gestion de ce nombre max :

Dans le dossier pour lequel le chemin fait 237 car :


<li>click droit / nouveau / document texte donne "impossible de créer
le fichier 'nouveau document texte.txt' le fichier spécifier est
introuvable --> pas très explicite

</li>
<li>on peut renommer le fichier 'test document.txt' (auparavant
déplacer d'un autre dossier) en 'test document0000.txt', ce qui fait un
total de 259 car pour le chemin complet (je suppose que dans ce cas il
ne tient pas compte du 'E:\')</li>

Tout cela est bien joli, mais comment fait on pour accéder au fichier via PHP ??



Je m'explique :

Je veux créer un script (je pensais en avoir pour 1 heure, c'est rapé )
en CLI qui permet de balayer, via une fonction récursive, chaque
dossier et sous dossier du chemin passé en paramétre (ça peut être C:)
à la recherche des fichiers .xls afin de leurs appliquer un petit
traitement (correction bug "format de fichier SYLK invalide")



exemple : je lance mon script depuis une clé USB (L:\) et demande une
analyse de E:\ ... à un moment ou à un autre le script va bloquer et
c'est même pire que ça, il affiche en boucle infinie le nom d'un
fichier présent dans le même répertoire que le BAT qui le lance
(je ne suis pas sur d'être très clair ), étrange comportement ...



Merci pour vos réponses,



Kohntark-
3
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
5 nov. 2005 à 12:31
je crois que ça vient de ton windows...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
5 nov. 2005 à 13:24
Salut,



le nombre de caractères sous Windows est limité à 255. donc ça ne doit pas venir de là ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
5 nov. 2005 à 13:47
enfin esai peut-être...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
Rejoignez-nous