Question

Pourquoi ne puis-je créer un chemin profond dont les caractères dans le chemin est plus de 255 dans le système de fichiers NTFS? Il semble une limite de FAT32, mais existe aussi en NTFS? Quelqu'un peut-il fournir des documents?

Merci beaucoup!

Était-ce utile?

La solution

La limitation de 260 caractères est pas une limitation du système de fichiers, mais de l'API Win32. Win32 définit comme MAX_PATH 260 qui est ce que l'API utilise pour vérifier la longueur de la trajectoire passée dans des fonctions comme FileCreate, FichierOuvrir, etc. (qui sont utilisés par .NET dans le BCL).

Cependant, vous pouvez contourner les règles Win32 et créer des chemins jusqu'à 32K caractères En gros, vous devez utiliser le « \\ \ C: \ MyReallyLongPath \ Fichier.txt ». Syntaxe que vous pouvez ne pas avoir vu auparavant. Aux dernières nouvelles, les classes et fichiers FileInfo dans .NET vous empêche d'utiliser ce type de chemin, mais vous pouvez certainement le faire à partir de C / C ++. Voici un lien pour plus d'informations.

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

Autres conseils

Citation de wikipedia

  

Les noms de fichiers sont limités à   255 UTF-16 mots de code. certains noms   sont réservés à la racine du volume   répertoire et ne peut pas être utilisé pour   des dossiers. Ce sont: $ MFT, MFTMirr $,   $ LogFile, $ Volume, attrdef $,. (point),   $ Bitmap, $ Boot, BadClus $, $ sécurisée,   $ UPCASE et $ Repousser [3]. (Point) et   $ Repousser sont les deux répertoires; le   d'autres sont des fichiers. Les limites du noyau NT   chemins complets à 32767 codes UTF-16   mots.

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

scroll top