PDA

View Full Version : حذف و ذخیره یک لیست باکس در یک فایل text



andaron
شنبه 18 تیر 1390, 22:19 عصر
سلام دوستان
هر چی سرچ کردم هیچ چیزی پیدا نکردم
سوالم اینه که چطور یک لیست باکس رو در یک فایل ذخیره کنم می تون یه تکس باکس رو ذخیره کنم ولی لیست باکس رو نمی تونم ؟
چطور موقعی که یک ایتم حذف شد به طور اتوماتیک بیاد خانه پایین قرار بگیه منظوره select index هستش

Salar Ashgi
یک شنبه 19 تیر 1390, 08:02 صبح
سوالتان کمی گنگ است ، ولی اگر به هر حال میخواین محتویات لیست باکس تو یه فایل ذخیره بشه :



System.IO.StreamWriter sw = new System.IO.StreamWriter("C:\\info.txt");
foreach (object obj in listBox1.Items)
{
sw.WriteLine(obj.ToString());
}
sw.Close();


موفق باشید ./

andaron
یک شنبه 19 تیر 1390, 09:29 صبح
ممنون دوست عزیز از پاسختان
حالا اگر بخواهیم به وسیله saveFileDialog ذخریه کنیم تنظیماتش چطور میشه ؟

esh_computer110
یک شنبه 19 تیر 1390, 10:40 صبح
قبلاش saveDialog رو باز کنید بعد به جای ادرسی که ما در اینجا به صورت دستی داده ایم ادرس محل ذخیره سازی را بدهید (SaveFileDialog1.FileName)

andaron
یک شنبه 19 تیر 1390, 14:36 عصر
.................................................. ..................
اشتباه شد
.................................................. ......................

andaron
یک شنبه 19 تیر 1390, 16:23 عصر
با سلام دوستان مشکل سیو کردم من درست شد ولی حالا به مشکل دیگه
وقتی فایلی رو open می کنم فاصله بین خطها مشخص نیست یعنی اگر خط اول 1 باشد و خط دوم 2 باشد وقتی فایل رو open میکنم می نویسیه 12 و یعنی کل متن رو در یک خط وارد listbox می کنه
اینم کدش

string str;
openFileDialog1.Filter = "text file (*.txt) |*.txt|"+"all files (*.*)|*.*";
openFileDialog1.FilterIndex = 1;
openFileDialog1.Title = "vaz k=erdanb";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
str = openFileDialog1.FileName;
lst_hamrah.Items.Add( System.IO.File.ReadAllText(str));

}

andaron
یک شنبه 19 تیر 1390, 16:25 عصر
سلام دوستان
مشکل بالا حل شد ولی حالا وقتی می خوام فایلی رو open کنم وقتی باز میشه تو لیست باکس اگر خود فایل اصلی در چند خط باشد ولی وقتی آنرا open میکنیم تمام متن ها پشت سر هم و در یک خط می باشند
اینم کدش ؟




string str;
openFileDialog1.Filter = "text file (*.txt) |*.txt|"+"all files (*.*)|*.*";
openFileDialog1.FilterIndex = 1;
openFileDialog1.Title = "vaz k=erdanb";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
str = openFileDialog1.FileName;
lst_hamrah.Items.Add( System.IO.File.ReadAllText(str));

}



سوال دوم
اینکه چطور یک متن را در لیسا باکس جستجو کنیم وقتی پیدا شد حالت انتخاب به خود بگیرد؟

esh_computer110
یک شنبه 19 تیر 1390, 19:28 عصر
یه حلقه بزنید و هر بار متن مورد نظر تون را با متن لیست باکس مقایسه کنید در صورت صحیح بودن ایندکس شما همون ایندکس حلقه است پس خاصیت SelectedIndex را برابر شمارنده حلقه قرار دهید
اگر متوجه نشدید بگید تا کدش رو براتون بگذارم .
تشکر یادتون نره

andaron
یک شنبه 19 تیر 1390, 20:52 عصر
راستش نفهمیدم؟:خجالت:
این برای کدوم سوالم بود (فکر کنم سوال دوم مربوط به حذف)

andaron
دوشنبه 20 تیر 1390, 10:13 صبح
دوستان کمک کنند ؟

andaron
سه شنبه 21 تیر 1390, 00:01 صبح
.................................................. ..

andaron
سه شنبه 21 تیر 1390, 21:10 عصر
سلام علیکم

یعنی کسی از دوستان جواب این دوستان را نمی دونه ؟؟

aradrobo
دوشنبه 12 تیر 1391, 17:23 عصر
System.IO.StreamReader sw = new System.IO.StreamReader("info.txt");
while (!sw.EndOfStream)
{
LstSite.Items.Add(sw.ReadLine());
}
sw.Close();

کدی که براتون نوشتم ، میاد فایل info رو که در قسمت نرم افزار هست رو باز می کنه و نمایش می ده . میتونی دستی هم باز کنی یا یه آدرس خاص بدی . من آدرس خاص دادم . امیدوارم فهمیده باشید