PDA

View Full Version : نحوه بدست آوردن حجم یک پوشه



omid-vbAuto
چهارشنبه 06 مهر 1390, 13:11 عصر
با سلام
با چه دستوری می تونیم حجم یک پوشه رو بدست آورد؟

Reza Safa
چهارشنبه 06 مهر 1390, 13:34 عصر
فکر کنم در این قسمت باشه
My.Computer.FileSystem.GetDirectoryInfo

omid-vbAuto
چهارشنبه 06 مهر 1390, 14:12 عصر
فکر کنم در این قسمت باشه
My.Computer.FileSystem.GetDirectoryInfo


اینو میدونم و چیزی راجب حجم فولدر توش نبود!!!!

مرتضی تقدمی
چهارشنبه 06 مهر 1390, 14:17 عصر
من تا حالا ندیدم. شاید هم وجود داشته باشه. اما می تونید حجم تمامی فایهای داخل پوشه رو با هم جمع کنید که میشه حجم پوشه.

omid-vbAuto
چهارشنبه 06 مهر 1390, 14:21 عصر
من تا حالا ندیدم. شاید هم وجود داشته باشه. اما می تونید حجم تمامی فایهای داخل پوشه رو با هم جمع کنید که میشه حجم پوشه.

این کار رو هم می دونم.شما فکر کن بخوای یه پوشه ای که n پوشه تو در تو داره رو بدست بیاری و ... خیلی مکافات داره.

اگه خاطرتون باشه تو vb6 با ابزار FSO به راحتی این کار قابل انجام بود.اما تو دات نت نمی دونم چه بلائی سرش امده.

omid-vbAuto
چهارشنبه 06 مهر 1390, 14:33 عصر
البته روش های زیادی برای بدست آوردن حجم فولدر هستش.اما تعجب من از این هستش که چرا یه تابع مشخص برای این کار در نظر نگرفته شده است.در هر حال مشکل من حل شد از شما ممنونم.

mehdi.mousavi
چهارشنبه 06 مهر 1390, 14:33 عصر
با سلام با چه دستوری می تونیم حجم یک پوشه رو بدست آورد؟ لطفا فوری جواب بدین.

سلام.
متاسفانه برای این کار تابعی وجود نداره و باید این عمل رو بصورت Recursive انجام داد.
برای مشاهده نمونه کد، لطفا به مثال آخر در این آدرس (http://msdn.microsoft.com/en-us/library/system.io.directory.aspx#Y3453) توجه کنید. تابع DirSize نوشته شده،
این کارو براتون انجام میده.

موفق باشید.

مرتضی تقدمی
چهارشنبه 06 مهر 1390, 15:03 عصر
خب شما می تونید به امکانی که توی vb.net وجود داره, کدهای 6 رو به net تبدیل کنید.

omid-vbAuto
چهارشنبه 06 مهر 1390, 15:30 عصر
خب شما می تونید به امکانی که توی vb.net وجود داره, کدهای 6 رو به net تبدیل کنید.

شما تبدیل کردین؟

omid-vbAuto
چهارشنبه 06 مهر 1390, 15:35 عصر
سلام.
متاسفانه برای این کار تابعی وجود نداره و باید این عمل رو بصورت Recursive انجام داد.
برای مشاهده نمونه کد، لطفا به مثال آخر در این آدرس (http://msdn.microsoft.com/en-us/library/system.io.directory.aspx#Y3453) توجه کنید. تابع DirSize نوشته شده،
این کارو براتون انجام میده.

موفق باشید.

من هم به این موضوع رسیدم.باز هم از شما تشکر می کنم.

مرتضی تقدمی
چهارشنبه 06 مهر 1390, 15:58 عصر
شما تبدیل کردین؟

بله. از منوی tools گزینه upgrade visual basic 6 code رو انتخاب کنید.

omid-vbAuto
چهارشنبه 06 مهر 1390, 16:18 عصر
بله. از منوی tools گزینه upgrade visual basic 6 code رو انتخاب کنید.


من چک کردم ولی کدی که داد همون بود و به درد نمیخوره!!! شما اگه تبدیل کردین اون کدهای تبدیل شده رو بدین. تو پست قبل نیز به همین موضوع اشاره کرده بودم.

مرتضی تقدمی
چهارشنبه 06 مهر 1390, 16:46 عصر
این قسمت در مورد بعضی کدها جواب نمیده. چون .net نسبت به 6 کلا دگرگون شده و طبیعیه که بعضی کدها تبدیل نشن. همون راه حلی که توی پست 7 گفته شده به نظر من خوب باشه.