PDA

View Full Version : سوال: گرفتن فایل های یک پوشه بدن ادرس



sinashahab
یک شنبه 18 اسفند 1387, 14:29 عصر
سلام
می خواستم بدونم میشه فایل های یک پوشه بدون ادرس رو گرفت ؟

rnm123
یک شنبه 18 اسفند 1387, 23:02 عصر
دوست عزیز مگه میشه ! شاید کاری که بتونی بکنی این است که کلیه پوشه های سیستم را سرچ کنی تا پوشه مورد نظر را پیدا کنی . در واقع با این کار مسیر و آدرس پوشه که کاربر وارد نکرده است را میتونی پیدا کنی ( فکر می کنم موضوع سئوالت همین بود که کاربر فقط با مشخص کردن نام پوشه با فایلهای آن دسترسی داشته باشد ؟)

sinashahab
دوشنبه 19 اسفند 1387, 13:06 عصر
ببخشید منظورم رو خیلی بد رسوندم .
منظور من این بود که وقتی این کد رو می نویسی :
foreach (string DataDar in System.IO.Directory.GetFiles(@"G:\DataDar"))
{
lstData.Items.Add(DataDar);
}

توی لست باکس ادرس کامل فایل ها میاد .
حالا می خواهم فقط نام انها باشه .
ممنون
اگه باز هم بد گفتم بگید دوباره بگم .

hasan_esfahan
دوشنبه 19 اسفند 1387, 13:41 عصر
این یک راه حل پیشنهادی است دوست داشتی استفاده کن


string adres = @"G:\DataDar";
foreach (string DataDar in System.IO.Directory.GetFiles(adres))
{
listBox1.Items.Add(DataDar.Substring(adres.Length+ 1,DataDar.Length-adres.Length-1));
}

ariyanna
دوشنبه 19 اسفند 1387, 18:48 عصر
ببخشید منظورم رو خیلی بد رسوندم .
منظور من این بود که وقتی این کد رو می نویسی :
foreach (string DataDar in System.IO.Directory.GetFiles(@"G:\DataDar"))
{
lstData.Items.Add(DataDar);
}

توی لست باکس ادرس کامل فایل ها میاد .
حالا می خواهم فقط نام انها باشه .
ممنون
اگه باز هم بد گفتم بگید دوباره بگم .

حالا سوالت مشخص شد و راه حل ساده ای هم داره می تونی به راحتی تو رشتت (هموم مثلا G:\a\b\c پیمایش کنی حالا دو راه داری یک اینکه بگی وقتی به \ آخری رسیدی قبل از اون و خود اون \ رو پاک کن و نتیجه می شه نام فایل... یکی اینکه در رشته پیمایش کن تا به نقطه (.) برسی وقتی به نقطه رسیدی پیمایش معکوس انجام بده تا به اولین \ برسی و بعد از اون و خود اون \ رو (در پیمایش معکوس "بعد از اون" میشه به سمت اول رشته) جذف کن خواستی بگو کدشو واست بذارم ... البته شاید با استفاده از روال ها هم بشه که من به ذهنم نمی یاد...

NewFoxStudent
دوشنبه 19 اسفند 1387, 22:59 عصر
این کار در دات نت خیلی ساده تر از این حرفهاست
فقط نیاز به یه سرچ ساده توی فوروم داره تا به ده ها جواب صحیح برسید
این هم یکی از این جوابها


http://barnamenevis.org/forum/showpost.php?p=469397&postcount=62

sinashahab
چهارشنبه 21 اسفند 1387, 12:56 عصر
خیلی ممنون
ولی چرا این همه کار سخت :
با substring(adres) ادرس را از سمت راست پاک میکنم .
ولی بازم ممنون .