मैं ऐसी किसी चीज़ पर काम कर रहा हूं जिसके लिए फ़ाइल सिस्टम के माध्यम से और किसी दिए गए पथ के लिए ट्रैवर्सिंग की आवश्यकता है, मुझे यह जानने की ज़रूरत है कि मैं फ़ोल्डर संरचना में 'गहरा' हूं। यहां मैं वर्तमान में उपयोग कर रहा हूं:सी # किसी दिए गए पथ के लिए फ़ोल्डर गहराई प्राप्त करने का सबसे अच्छा तरीका?
int folderDepth = 0;
string tmpPath = startPath;
while (Directory.GetParent(tmpPath) != null) {
folderDepth++;
tmpPath = Directory.GetParent(tmpPath).FullName;
}
return folderDepth;
यह काम करता है लेकिन मुझे संदेह है कि एक बेहतर/तेज़ तरीका है? किसी भी प्रतिक्रिया के लिए बहुत अधिक बाध्य।
बहुत पसंद है! बस एक त्वरित नोट, लंबाई एक संपत्ति एक विधि नहीं है। – BFree
ओह, अच्छा बिंदु; मैं इसे संपादित कर दूंगा ... –
अन्यथा मान्य अनुक्रमों जैसे कि C: \ फ़ोल्डर \ .. \ boot.ini के लिए टूटा जाएगा। या, यूएनसी नेटवर्क पथ जैसे \\ सर्वर \ शेयर \ फ़ाइल के लिए। और, आपको शायद पथ का उपयोग करना चाहिए। डायरेक्टरी SeperatorCharacter और Path.AltDirectorySeperatorCharacter। –