Pfadtiefe, Länge der Dateinamen etc

19/02/2009 - 13:12 von Maximilian Tescher | Report spam
Hallo,

ich bin etwas verwirrt über die verschiedenen Angaben für eine
zulàssige Lànge von Datei- oder Verzeichnislànge.

Was gilt den nun für WinXP und Vista? Pfad maximal 247 Zeichen
zuzüglich Dateiname 255 Zeichen oder Pfad und Datei maximal 255
Zeichen? Was ist mit maximal 8 Verzeichnisse maximaler
verschachtelung?

Testweise konnte ich eine Datei anlegen, durch verlàngern des
Dateinamen oder eines Verzeichnisnamen im Pfad geht das bis maximal
259 Zeichen, bei 260 Zeichen konnte ich die Datei nicht mehr öffnen.

Alleine wenn die Zahl 255 stimmt, weshalb kann ich nun dennoch 259
Zeichen langen Pfad mit Dateinamen erstellen?

Irgendwie etwas verwirrend :-)

Gibt es dazu gesicherte Informationen? Da wir mit zu langen Pfaden/
Dateinamen zu kàmpfen haben, erstelle ich gerade ein Testprogramm (das
aber hauptsàchlich andere Dinge prüft) zur Ausgabe der betreffenden
Dateien, aber hierzu würde ich gerne wissen was nun gilt.

Wàre Euch dankbar für eine Info.

Gruss,
Maxi
 

Lesen sie die antworten

#1 Elmar Boye
19/02/2009 - 14:50 | Warnen spam
Hallo Maximilian,

Maximilian Tescher schrieb:
ich bin etwas verwirrt über die verschiedenen Angaben für eine
zulàssige Lànge von Datei- oder Verzeichnislànge.

Was gilt den nun für WinXP und Vista? Pfad maximal 247 Zeichen
zuzüglich Dateiname 255 Zeichen oder Pfad und Datei maximal 255
Zeichen? Was ist mit maximal 8 Verzeichnisse maximaler
verschachtelung?



Genauer erklàrt das:
<URL:http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx>
"Naming a File or Directory"

Zusammgenfaßt: Unterscheiden muß man zwischen dem Windows API,
das eine maximale Pfadlànge von 260 (MAX_PATH) Zeichen vorgibt.
Und der Lànge, die ein Dateisystem vorgeben kann, bei NTFS
können das bis zu 32767 sein.

Da .NET auf dem Windows-API aufsetzt gilt primàr die max.
Lànge 260 Zeichen.
Davon geht der Laufwerksbuchstabe (z. B. C:\ => 3 Zeichen) ab,
womit Dir 257 für einen Dateinamen und aller Verzeichnisse bleiben
(und jedes Verzeichnis ein "\" benötigt).

Gruß Elmar

Ähnliche fragen