PDA

View Full Version : ارسال اطلاعات از فايل txt به ديتا گريد ويو



behroz1387
سه شنبه 19 خرداد 1388, 01:32 صبح
دوستان عزيز سلام
من براي دريافت اطلاعات از يك فايل تكست به يك ليست باكس از كد زير استفاده كردم و جواب داد

StreamReader sr = new StreamReader (@"c:\test.txt",Encoding .Default);
for (int i = 0; i < 100 && !sr.EndOfStream;)
{
listBox3.Items.Add(sr.ReadLine ());
}
sr.Close();


حال اگه بخوام اين اطلاعات را در داخل يك ديتا گريد ويو نمايش دهم بايد چكار كنم
ممنون مي شم اگه كسي جواب بده

behroz1387
چهارشنبه 20 خرداد 1388, 15:42 عصر
دوستان عزیز اگه کسی می تونه کمک کنه ممنون می شم

Open-Source
چهارشنبه 20 خرداد 1388, 16:20 عصر
اگه میتونی یه خورده بیشتر در مورد dbgride توضیح بده و ....

NewFoxStudent
چهارشنبه 20 خرداد 1388, 16:26 عصر
باید مشخص کنید گریدتون چندتا ستون داره و برای جدا کردن فیلدها از هم توی فایل تکست از چه جدا کننده ای استفاده شده
یا این که گرید یک ستون داره و میخواهید هر خط رو توی یه ردیف از گرید نمایش بدید

behroz1387
چهارشنبه 20 خرداد 1388, 17:50 عصر
دوست عزیز دیتا گرید ویو سه ستون داره داره و فایل تکست هم بصورت سه ستونی هست فقط من از جدا کننده که نام بردید اطلاع زیاد ندارم میشه کمی توضیح بدید ممنون می شم

NewFoxStudent
چهارشنبه 20 خرداد 1388, 18:24 عصر
منظورن اینه که ستونهای فایل تکست با چی از هم جدا شدن مثلا با Tab یا Space یا کاما یا ...
در هر صورت من این نمونه کد رو براتون نوشتم



System.IO.StreamReader sr = System.IO.File.OpenText(@"C:\CTS.txt");
string lineStr = "";
while (!sr.EndOfStream)
{
lineStr = sr.ReadLine();
dataGridView1.Rows.Add(lineStr.Split(','));
}

فایل تکستی که من توی این نمونه استفاده کردم ستونهاش با کاما از هم جدا شدن

behroz1387
چهارشنبه 20 خرداد 1388, 22:30 عصر
استاد عزيز من كد را آنگونه كه شما گفتيد نوشتم فقط يك مشكل داره كه از خط زير ايراد مي گيره كه No row can be added to a DataGridView control that does not have columns. Columns must be added first.
اگه مي شه كنك كنيد
از توجهتان متشكرم

NewFoxStudent
پنج شنبه 21 خرداد 1388, 11:20 صبح
شما ستونهای گرید رو موقع طراحی ایجاد میکنید یا موقع اجرا
این پیغام داره میگه شما توی گرید ستونی ندارید
اگه با کد ستونهاتون رو ایجاد میکنید ممکنه قبل از ایجاد ستونها کد دریافت اطلاعات از فایل اجرا میشه

behroz1387
پنج شنبه 21 خرداد 1388, 14:43 عصر
استاد عزيز مشكلم حل شد ممنون هستم فقط يك سوال اگه به جاي , از فاصله استفاده كنم بايد اين خط كد را چگونه بنويسم
dataGridView1.Rows.Add(lineStr.Split(','));

NewFoxStudent
پنج شنبه 21 خرداد 1388, 15:21 عصر
به جای اون کاما یه Space بزار

dataGridView1.Rows.Add(lineStr.Split(' '));

behroz1387
پنج شنبه 21 خرداد 1388, 15:32 عصر
دوست عزيز مي شه كل فاصله ها را يكجا به , تغيير بدي منظورم توي فايل txt است

NewFoxStudent
پنج شنبه 21 خرداد 1388, 15:35 عصر
خوب توی فایل تکست با استفاده از گزینه Replace میتونی این کار رو بکنی

Mahdi.Kiani
جمعه 22 خرداد 1388, 00:44 صبح
با سلام
در هنگام کار کردن با داده هایی که درون فایل قرار دارند، کار کردن با فایل های xml نسبت به فایل های text بیشر توصیه می شود.
موفق باشید