2009-12-07 12 views
13

मैं एक गहरा पथ क्यों नहीं बना सकता हूं जिसका पथ पथ एनटीएफएस फाइल सिस्टम में 255 से अधिक है? यह FAT32 की सीमाएं प्रतीत होता है, लेकिन एनटीएफएस में भी मौजूद है? क्या कोई कुछ दस्तावेज प्रदान कर सकता है?क्या NTFS में फ़ाइल पथ की कोई लंबाई सीमा है?

बहुत धन्यवाद!

उत्तर

20

260 वर्ण सीमा फ़ाइल सिस्टम की सीमा नहीं है, लेकिन Win32 API की है। Win32 MAX_PATH को 260 के रूप में परिभाषित करता है जो कि एपीआई फाइलक्रेट, फ़ाइल ओपेन इत्यादि जैसे कार्यों में पारित पथ की लंबाई की जांच करने के लिए उपयोग कर रहा है (जिसे बीसीएल में .NET द्वारा उपयोग किया जाता है)।

हालांकि, आप Win32 नियमों को बाईपास कर सकते हैं और 32K वर्णों तक पथ बना सकते हैं। असल में आपको "\\? \ C: \ MyReallyLongPath \ File.txt" वाक्यविन्यास का उपयोग करने की आवश्यकता है जिसे आपने पहले नहीं देखा होगा। आखिरी बार मैंने जांच की, .NET में फ़ाइल और फ़ाइलइन्फो कक्षाओं ने आपको इस प्रकार के पथ का उपयोग करने से रोका, लेकिन आप निश्चित रूप से इसे सी/सी ++ से कर सकते हैं। अधिक जानकारी के लिए यहां एक लिंक है।

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

+0

ऐसा लगता है कि एक API Windows 95 कि 'MAX_PATH' वर्णों से समर्थन रास्तों अब करता है के साथ पेश किया गया: शैल एपीआई। –

4

विकिपीडिया

फ़ाइल नामों से उद्धरित 255 UTF-16 कोड शब्द तक सीमित हैं। कुछ नाम वॉल्यूम रूट निर्देशिका में आरक्षित हैं और फ़ाइलों के लिए उपयोग नहीं किए जा सकते हैं। ये हैं: $ एमएफटी, $ एमएफटीएमआईआरआर, $ लॉगफाइल, $ वॉल्यूम, $ AttrDef,। (डॉट), $ बिटमैप, $ बूट, $ BadClus, $ सुरक्षित, $ उपकेस, और $ विस्तार; [3]। (डॉट) और $ विस्तार दोनों निर्देशिकाएं हैं; अन्य फ़ाइलें हैं। एनटी कर्नेल 32,767 यूटीएफ -16 कोड शब्दों के लिए पूर्ण पथ को सीमित करता है।

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

3

Doc। आपको निश्चित रूप से 255 बाइट्स से अधिक लंबे समय तक फ़ाइलपैथ बनाने में सक्षम होना चाहिए, जब तक कि प्रत्येक व्यक्तिगत पथ घटक उसके अधीन न हो। हालांकि आपको इस व्यवहार को प्राप्त करने के लिए फ़ाइल एक्सेस कॉल के यूनिकोड (डब्ल्यू) संस्करणों का उपयोग करना होगा; यदि आप एएनएसआई (ए) बाइट-आधारित इंटरफेस का उपयोग कर रहे हैं जैसे कि स्टडीओ द्वारा उपयोग किए जाने वाले, आप पुराने प्री-यूनिकोड पथ इंटरफ़ेस की सीमाओं से फंस जाएंगे।

संबंधित मुद्दे