Frage

Warum kann ich einen tiefen Weg, dessen Zeichen in Pfad erstellen, ist mehr als 255 in NTFS-Dateisystem? Es scheint eine Grenze von FAT32, aber auch existiert in NTFS? Kann jemand einige Dokumente zur Verfügung stellen?

Vielen Dank!

War es hilfreich?

Lösung

Die 260 Zeichenbegrenzung ist keine Einschränkung des Dateisystems, sondern von der Win32-API. Win32 definiert MAX_PATH als 260, ist, was die API wird unter Verwendung der Länge des Weges in Funktionen wie Filecreate, Fileopen weitergegeben zu überprüfen usw. (die in der BCL von .NET verwendet werden).

Sie können jedoch die Win32-Regeln umgehen und schaffen Pfade bis zu 32K Zeichen Grundsätzlich Sie verwenden müssen "\\ \ C: \ MyReallyLongPath \ File.txt". Syntax, die können Sie noch nie zuvor gesehen hat. Zuletzt überprüfte ich, verhindert die Datei und Fileinfo-Klassen in .NET Sie von dieser Art von Pfad, aber man kann es auf jeden Fall tun, von C / C ++. Hier ist ein Link für weitere Informationen.

http://msdn.microsoft.com/en -US / library / aa365247 (VS.85) aspx

Andere Tipps

Zitat von Wikipedia

  

Dateinamen sind auf   255 UTF-16-Codewörter. bestimmte Namen   ist in dem Volumen root vorbehalten   Verzeichnis und kann nicht verwendet werden   Dateien. Diese sind: $ MFT, $ MFTMirr,   $ LogFile, $ Volumen, $ AttrDef. (Punkt),   $ Bitmap, $ Stiefel, $ BadClus, $ secure,   $ Upcase und $ verlängern; [3]. (Dot) und   $ Extend sind beide Verzeichnisse; das   andere sind Dateien. Die NT-Kernel Grenzen   vollständige Pfade zu 32.767 UTF-16-Code   Wörter.

http://en.wikipedia.org/wiki/NTFS

Doc . Sie sollten sicherlich in der Lage sein, mehr Dateipfade als 255 Bytes zu erstellen, solange jede einzelne Pfadkomponente unter dem ist. Allerdings müssen Sie sein, die Unicode (W) Versionen der Dateizugriff Anrufe über dieses Verhalten zu erhalten; wenn Sie die ANSI (A) Byte-basierten Schnittstellen, wie sie von stdio verwendet verwenden, werden Sie mit den Grenzen der alten Pre-Unicode-Pfad-Schnittstelle gesteckt werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top