Limitation nombres de caractères dans chemin fichier

Résolu
kohntark
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
- 5 nov. 2005 à 10:11
kohntark
Messages postés
3706
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
41
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
3706
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
41
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
9
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
41
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