PDA

View Full Version : سوال: خواندن از فایل متنی و ذخیره آن در دیتابیس



amir.khanlari
سه شنبه 08 دی 1388, 14:04 عصر
با سلام خدمت دوستان .
مشکلی که من دارم اینه که می خواهم از یک فایل متنی اطلاعات رو بخونم و به صورت فیلد به فیلد در بانک ذخیره کنم . فایل متنی به این صورته که در هر خط مقدار مربوط به چند فیلد در بانک وجود دارد و باید این مقادیر خوانده شده و به ترتیب در بانک اظافه شود . لطفا راهنمایی کنید .
با تشکر

behzad1986
سه شنبه 08 دی 1388, 14:11 عصر
سلام یه کلاس بساز که شامل فیلدهای داخل خطوط فایل متنی باشه . با دستور Stream فایل متنی رو بخون وبا استفاده از تابع ْsubstring مقدار فیلد ا رو از هر خط متن جدا کن وداخل فیلد های کلاس قرار بده بعد در بانک ذخیره کن

Saeed.Masoumi
سه شنبه 08 دی 1388, 22:07 عصر
سلام
مدل نوشتاری فایلتان را بگذارید.
محل قرار گیری فیلدهای مورد نیاز در فایل مد نظر است.
چون اون روش بالا که دوستمان گفت کار ساز است اگر الگوی فایل یکسان باشد تا بتوان از Substring استفاده کرد (آفست ها را باید بدست آورد) در غیر اینصورت یکم سخت میشه قضیه
در هر صورت شما الگوی فایل را بگذارید

paridarkavir
چهارشنبه 09 دی 1388, 07:58 صبح
سلام
مشکل من هم دقیقا همینه ولی جواب های دوستان برایم گنگه
مشکل من به این صورت که از فایل ورد می خواهم متن را بگیرم و تعداد نامشخصی کلمه یا بهتر بگم جمله را شناسائی و به ترتیب در چند تا فیلد قرار بدهم
یه مطلب دیگه:
آیا فونت کلمات را می توان تشخیص داد یا نه؟یعنی از سی شارپ به وسیله فونت کلمات در ورد متوجه محل قرار گرفتن آن درفیلدی از بانک شویم؟
موفق و موید باشید

paridarkavir
پنج شنبه 10 دی 1388, 09:29 صبح
کسی راهنمائی نمی کنه!!

skflower
یک شنبه 27 دی 1388, 21:56 عصر
لطفاً یه نفر یه راهنمایی کنه. من هم همین مشکل رو دارم. توابع کار با رشته ها رو نیاز دارم.

mir555
یک شنبه 27 دی 1388, 22:41 عصر
می تونین از خود sql server استفاده کنین روش راست کلیک import کنین و نوع فایل ورودی را text انتخاب کنین به راحتی دیتا تو جدول ذخیره میشه

paridarkavir
شنبه 17 بهمن 1388, 09:38 صبح
سلام مثل اینکه من بد توضیح دادم. اصل کارم اینه که می خوام یک سری بیت را در بانک ذخیره کنم حالا چه کنم ؟
می خوام هر مصراع اول در فیلد اول و مصراع دوم در فیلد دوم ذخیره شود تا آخر
موفق باشید

ali.aghdam
شنبه 17 بهمن 1388, 14:29 عصر
آقای amir.khanlari (http://barnamenevis.org/forum/member.php?u=52178) بهتر است قبل از ایجاد پست جدید یک جستجو بکنید:عصبانی++:

http://barnamenevis.org/forum/showthread.php?t=200826

aminh85
شنبه 17 بهمن 1388, 15:23 عصر
کد خوندن از فایل تکست اینه و محتویات فایلو تو 3 تا آرایه می زاره، کافیه کد اضافه کردن به db رو خودت اضاف کنی.


Names = new string[100];
Datas = new string[100];
myflag = new string[100];
StreamReader sr = new StreamReader("d:\\names.dat");
while (!sr.EndOfStream)
{
Names[i] = sr.ReadLine();
comboBox1.Items.Add(Names[i]);
Datas[i] = sr.ReadLine();
i++;
}
sr.Close();

naeeme
یک شنبه 18 بهمن 1388, 10:52 صبح
شما در مورد Import فایل CSV در DB تحقیق کنید. فایلی که شما می خواین اطلاعاتش رو به DB وارد کنید در واقع فرمتی خاص از فایلهای csv هست.
شما می تونین بعد از خوندذن اطلاعات از فایل، اون رو داخل یک dataTable ذخیره کنید و با کمک sqlBulk اون رو به دیتابیس Import کنید.

seven7777777
یک شنبه 18 بهمن 1388, 11:28 صبح
این که خیلی راحته .شما عناصر موجود در هر خط فایل متنتو با یه کاراکتر منحصربه فرد که هیچ جای جملت استفاده نمی کنی ، جدا کن ( همون نوعی از CSV ) .
بعد از فایلت خط به خط بخون و با استفاده از Split کردن روی یک رشته بیا و اون عناصر رو با استفاده از اون کاراکتر خاص جدا کن و تو یه آرایه بریز .
بقیشم که خودت بلدی و خیلی راحته .
اگه سوالی پیش اومد بگو .