Domanda

Perché non posso creare un percorso di profonda i cui personaggi nel percorso è più di 255 nel file system NTFS? Mi sembra un limite di FAT32, ma in NTFS esistono anche? Qualcuno può fornire alcuni documenti?

Molte grazie!

È stato utile?

Soluzione

La limitazione di 260 caratteri non è una limitazione del file system, ma di API Win32. Win32 definisce MAX_PATH come 260 che è ciò che l'API sta usando per controllare la lunghezza del percorso passato in funzioni come FileCreate, FileOpen, ecc (che sono usati da NET nel BCL).

Tuttavia, è possibile ignorare le regole Win32 e creare percorsi fino a 32K caratteri Fondamentalmente è necessario utilizzare il "\\ \ C:? \ MyReallyLongPath \ File.txt". Sintassi che si può non hanno visto prima. Ultimo ho controllato, il file e classi FileInfo in .NET è stato impedito di utilizzare questo tipo di percorso, ma sicuramente si può fare da C / C ++. Ecco un link per maggiori informazioni.

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

Altri suggerimenti

Citato da wikipedia

  

I nomi dei file sono limitati a   255 UTF-16 parole di codice. Alcuni nomi   sono riservati nella radice del volume   directory e non può essere utilizzato per   File. Questi sono: $ MFT, $ MFTMirr,   $ LogFile, $ Volume, $ AttrDef,. (punto),   $ Bitmap, $ Boot, $ BadClus, $ sicura,   $ Upcase, e $ Extend; [3]. (Punto) e   $ Estendere sono entrambe le directory; il   gli altri sono file. I limiti del kernel NT   percorsi completi per 32.767 UTF-16 codice   parole.

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

doc . Si dovrebbe certamente essere in grado di creare filepaths più lunghe di 255 byte, a patto che ogni componente del percorso individuo è sotto quella. Tuttavia è necessario utilizzare le versioni Unicode (W) delle chiamate di accesso ai file per ottenere questo comportamento; se si sta utilizzando l'ANSI (A) interfacce byte-based come quelli utilizzati da stdio, ti verrà bloccato con le limitazioni del vecchio pre-Unicode interfaccia percorso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top