क्या string[]
कहने के लिए आपूर्ति की गई रूट निर्देशिका से शुरू होने वाली प्रत्येक फ़ाइल (जिसे आपने एक्सेस पढ़ा है) के पूर्ण योग्यता वाले पथ में लोड करने का एक त्वरित तरीका है?निर्देशिका पर प्रगति की रिपोर्टिंग। गेटफाइल
मैं System.IO.Directory.GetFiles
देखा, लेकिन इससे पहले कि आप इनपुट SearchOption.AllDirectories
करने की अनुमति है एक फिल्टर की आपूर्ति करने के लिए है, तो मैं करने की कोशिश की:
string[] directoryList = Directory.GetFiles(RootPath, "*.*",
SearchOption.AllDirectories);
कहाँ RootPath
मेरी मान्य, निहित निर्देशिका है। यह ठीक काम करता प्रतीत होता है, सिवाय इसके कि यह मेरे विंडोज़ फॉर्म ऐप को बहुत लंबे समय तक लटका देता है जब इसे 2 9 जीबी की एक बड़ी निर्देशिका/फ़ाइल संरचना और कुछ सौ हजार फाइलों पर इंगित करता है।
तो मैं एक BackgroundWorker
ताकि मेरे जीयूआई बंद नहीं दिखाई थी के माध्यम से इसे सूत्रण के बारे में सोचा है, लेकिन मुझे यकीन है कि कैसे मैं एक ProgressBar
के लिए कुछ इस तरह के लिए प्रगति की रिपोर्ट चाहते हैं, क्योंकि यह सिर्फ एक बयान है कि कर रहा है है नहीं कर रहा हूँ लोडिंग और मुझे फाइलों की कुल संख्या के बारे में कोई जानकारी नहीं है, या जिस नंबर पर पहले से संसाधित किया गया है, उस पर कोई जानकारी नहीं है।