PDA

View Full Version : تابعی برای نمایش نام پوشه های موجود در یک دایرکتوری؟



one hacker alone
دوشنبه 11 اردیبهشت 1391, 19:20 عصر
با یاد خدا
سلام دوستان
میخواستم بدونم چجوری میشه فهمید در مسیر مثلا c:/1 چه پوشه هایی وجود داره؟ از کنترل هایی مانند tree و.. نمیخوام استفاده کنم آیا تابع خاصی هست یا خودم باید بنویسم؟

esiprogrammer
دوشنبه 11 اردیبهشت 1391, 21:35 عصر
مثلا این کد تمام پوشه های موجود در درایو C رو برمیگردونه



string[] files = System.IO.Directory.GetDirectories("c:\\");0

one hacker alone
سه شنبه 12 اردیبهشت 1391, 03:43 صبح
من همینو نوشتم اما خروجی میده system.string[]


string[] files = System.IO.Directory.GetDirectories("c:\\") ;
button1.Text=Convert.ToString(files);

one hacker alone
سه شنبه 12 اردیبهشت 1391, 21:02 عصر
دوستان این تابع کار نکرد
یکی راهنمایی کنه
ممنون

Sirwan Afifi
سه شنبه 12 اردیبهشت 1391, 21:36 عصر
خوب دوست عزیز شما باید با استفاده از حلقه foreach عناصر files رو یکی یکی بخونید.

Mahmoud.Afrad
سه شنبه 12 اردیبهشت 1391, 21:41 عصر
شما یک آرایه دارید که محتوای خانه ها نام دایرکتوری هاست در حالی که شما نام آرایه رو استفاده کردید سیستم هم نوع آرایه رو داده دیگه.


string[] files = System.IO.Directory.GetDirectories("c:\\");
foreach (string st in files)
{
textBox1.Text += st;
}

one hacker alone
چهارشنبه 13 اردیبهشت 1391, 01:49 صبح
ممنون جواب داد فقط 2 سوال

1- دستور foreach چیه؟
2- تو textbox چجوری enter بزنیم بریم خط بعد

amirrr3
چهارشنبه 13 اردیبهشت 1391, 17:26 عصر
یه باتون و یه لیست باکس ایجاد کن و تو رخداد کلیک باتون این کد رو بنویس


foreach (string dir in System.IO.Directory.GetDirectories(@"C:\"))
{
listBox1.Items.Add(dir);
}


دستور foreach برای مواقعی استفاده میشه که ما می خوایم تو یه آرایه بگردیم
اول یه تابع از نوع string ساختیم که هر بار یه آیتم از آرایه ای که درونش نام پوشه های درایو سی هست رو قرار بدیم
بابت هر بار که foreach یه آیتم رو شناسایی میکنه دستور پایین اجرا میشه
و این دستور رشته ی dir رو درون لیست باکس قرار میده
این دستور به تعداد تمام آیتمهای درون آرایه اجرا میشه

موفق باشی