تور لحظه آخری
امروز : یکشنبه ، 11 آذر 1403    احادیث و روایات:  پیامبر اکرم (ص):بدانيد كه بدترين بدها، علماى بدند و بهترين خوبان علماى خوبند.
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

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

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

ساختمان پزشکان

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

خرید نهال سیب

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

رفع تاری و تشخیص پلاک

پرگابالین

دوره آموزش باریستا

مهاجرت به آلمان

بهترین قالیشویی تهران

 






آمار وبسایت

 تعداد کل بازدیدها : 1836333659




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

کار با فایلها و استریم ها در سی شارپ


واضح آرشیو وب فارسی:سایت ریسک: yam7806-04-2007, 11:45 AMچگونگی کار با فایلها و استریم ها را هر کس سوال داشت در این تاپیک بپرسه yam7806-04-2007, 11:55 AMسوال اول رو خودم می پرسم فرض کنید یک برنامه خیلی ساده داریم که فقط یک فرم دارد و یک کلاس تعریف استریم باید در کجا قرار بگیرد؟ چون من هر جا می نویسمش یا ایراد می گیره و یا در مواقع استفاده اسمش رو برام نمی آره توضیح : در کتاب آقای جعفرنژاد نوشته که استریم ها و متغیرهایی از نوع BinaryFormatter را بعد از عبارت endregion# باید تعریف کرد ولی من اثری از این کلمه در برنامه ام نمی بینم someone06-04-2007, 12:01 PMسلام. شما باید از IO Namespace در برنامه استفاده کنین تا بتونین از کلاس های Stream , StreamReader و StreamWriter استفاده کنین. به این شکل : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! yam7806-04-2007, 12:04 PMاستفاده کردم... ولی بازم نشد :( someone06-04-2007, 07:25 PMاین یه نمونه ی ساده از Stream ها : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! البته یه برنامه Console هست. فکر نمیکنم نیاز به توضیح داشته باشه. اگه مشکلی پیش اومد اطلاع بدین. yam7806-04-2007, 09:00 PMممنون برنامه جواب داد و تقریباً فهمیدم باید چه کار بکنم armita.s07-04-2007, 12:34 AMمن می خواهم برنامه ای بنویسم که عناصر موجود در یک فایل رو تجزیه کنم.(مثل parser ) اما با خوندن از فایل مشکل دارم .( مثلا if _دستور کنترلی) باید ادرس فایل مورد نظر رو به برنامه بدم میشه راهنمایی کنید .اگر امکان داره با یه مثال yam7807-04-2007, 01:55 AMبرای خوندن از یک فایل... اگه یک داده string داشته باشیم مثلاً مینویسیم: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! برای خوندن یک داده از نوع DateTime باید از چه متدی استفاده کرد؟ متد ReadDateTime که نداره!! yam7807-04-2007, 08:52 AMیک سوال دیگه... برای خوندن همه رکوردهای فایل باید از تابع seek استفاده کنم؟ someone08-04-2007, 10:41 PMسلام. من می خواهم برنامه ای بنویسم که عناصر موجود در یک فایل رو تجزیه کنم.(مثل parser ) اما با خوندن از فایل مشکل دارم .( مثلا if _دستور کنترلی) باید ادرس فایل مورد نظر رو به برنامه بدم میشه راهنمایی کنید .اگر امکان داره با یه مثال به نمونه بالا مراجعه کنین. برای خوندن یک داده از نوع DateTime باید از چه متدی استفاده کرد؟ متد ReadDateTime که نداره!! اطلاعات در یه فایل binary هستند (به طور کلی) کافیه کاراکتر به کاراکتر اطلاعات رو بگیرین. اگه فایل مورد نظر txt هست به راحتی از ReadLine استفاده کنین. یک سوال دیگه... برای خوندن همه رکوردهای فایل باید از تابع seek استفاده کنم؟ لزومی نداره. چطور ؟ yam7809-04-2007, 01:09 AMاطلاعات در یه فایل binary هستند (به طور کلی) کافیه کاراکتر به کاراکتر اطلاعات رو بگیرین. اگه فایل مورد نظر txt هست به راحتی از ReadLine استفاده کنین. لزومی نداره. چطور ؟ 1- فایلم باینری هست حالا یه سوال دیگه پیش اومد ... اگه فایل txt باشه برای تبدیل string به DateTime باید چه کنم؟ تابع ToDate هم نداره که! یا من بلد نیستم؟ 2- پس باید چه کاری بکنم برای گزارشگیری از یک فایل؟ متشکر someone10-04-2007, 10:12 AMدوباره سلام. میتونین از متود Parse استفاده کنین به این شکل : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! fariba_gh2016-04-2007, 10:53 AMسلام من ميخوام محتواي جداول بانك اطلاعاتي با Sql را بخونم و بريزم در يك فايل و بعد ميخوام همون فايلي كه ايجاد كردم اطلاعاتشو بخونم و بريزم داخل جداول بانك اطلاعاتي امكان اين كار هست ؟ someone16-04-2007, 02:28 PMسلام. دقیقا برعکس همون برنامه باید عمل کنین. البته موردی که براتون گذاشته بودم تنها در مورد یه field هست. کافیه فایل مورد نظر رو خط به خط جستجو کنین با استفاده از ReadLine. اگه بانک شما چندین field داره میتونین اطلاعات هر رکورد رو به صورت یه تگ در یه فایل ذخیره کنین . البته اگه خودتون بخواین میتونین براش یه parser بنویسین. مثلا : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! نمونه بالا قراردادی هست که خودتون ایجاد میکنین. میتونه هر شکلی داشته باشه. اما یه روش استاندارد به نام CSV وجود داره .تو این روش شما اطلاعات هر field و record رو پست سر هم و بوسیله " , " از هم جدا میکنین. می تونین از XMLparser هم استفاده کنین. fariba_gh2017-04-2007, 07:07 PMسلام. دقیقا برعکس همون برنامه باید عمل کنین. البته موردی که براتون گذاشته بودم تنها در مورد یه field هست. کافیه فایل مورد نظر رو خط به خط جستجو کنین با استفاده از ReadLine. اگه بانک شما چندین field داره میتونین اطلاعات هر رکورد رو به صورت یه تگ در یه فایل ذخیره کنین . البته اگه خودتون بخواین میتونین براش یه parser بنویسین. مثلا : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! نمونه بالا قراردادی هست که خودتون ایجاد میکنین. میتونه هر شکلی داشته باشه. اما یه روش استاندارد به نام CSV وجود داره .تو این روش شما اطلاعات هر field و record رو پست سر هم و بوسیله " , " از هم جدا میکنین. می تونین از XMLparser هم استفاده کنین. سلام ميشه راجب CSV بيشتر برام بگين و اينكه چطوري ميتونم ازش استفاده كنم انكه با كاما جدا بشه خيلي خوبه hamidreza_buddy17-04-2007, 08:08 PMسلام من ميخوام محتواي جداول بانك اطلاعاتي با Sql را بخونم و بريزم در يك فايل و بعد ميخوام همون فايلي كه ايجاد كردم اطلاعاتشو بخونم و بريزم داخل جداول بانك اطلاعاتي امكان اين كار هست ؟ اشیائی از نوع DataTable و DataSet متدهایی دارند با نام های ReadXml() ReadXmlSchema() WriteXml() WriteXmlSchema() s با استفاده از این متدها می توان کل جدول را درون یک فایل xml ذخیره و سپس آن را بازیابی کرد. البته باید Schema جدول را هم ذخیره کرد تا موقع خواندن مشکلی بوجود نیاید. برای ذخیره: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و برای خواندن: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! پس کاری که شما می کنید اینه که جدول را درون یک DataTable بخونید و سپس اون رو بوسیلۀ این متدها ذخیره کنید. someone18-04-2007, 07:05 PMدوباره سلام. در مورد CSV میتونین Parser پیدا کنین.مثلا : http://www.knab.ws/blog/index.php?/archives/3-CSV-file-parser-and-writer-in-C-Part-1.html http://www.knab.ws/blog/index.php?/archives/10-CSV-file-parser-and-writer-in-C-Part-2.html البته قبل از بحث در موردش به شما بستگی داره. حمیدرضا مطلبی رو در باره ی XML گذاشتن. قبلا هم در بارش صحبت کرده بودیم. یکی از دو موضوع رو انتخاب کنین تا بتونیم بیشتر در موردش صحبت کنیم. (XML بهتر هست.) چون موضوع خیلی جالبی هست و همین طور پر کاربرد. و اگه قرار هست این بحث ادامه پیدا کنه ، لطفا در پست زیر دنبالش کنین : http://www.forum.p30world.com/showthread.php?t=111294 fariba_gh2019-04-2007, 10:40 PMسلام از ReadXML, WriteXML استفاده كردم و تقريبا كارم حل شد ( ممنون حميدرضا) فقط 1 مشكل پيش اومد ، اينكه در دو تا از جدولها از Identity استفاده كردم و زماني كه ميخوام اطلاعات رو داخل جدول بريزم اين اجازه را به من نميده حتي از دستور SET Identity Table OFF هم استفاده كردم ولي بازم جواب نميده 1 راه حل به من بگيد تا فردا بيشتر وقت ندارم yam7830-04-2007, 06:29 PMدوباره سلام برای دستیابی به یک رکورد (یعنی همون سرچ) در یک فایل txt و از نوع random access اآیا متد خاصی داریم؟ اگه نه پس چه کار باید بکنیم؟ hamidreza_buddy30-04-2007, 07:23 PMدوباره سلام برای دستیابی به یک رکورد (یعنی همون سرچ) در یک فایل txt و از نوع random access اآیا متد خاصی داریم؟ اگه نه پس چه کار باید بکنیم؟ باید از متد Seek کلاس FileStream استفاده کنیم. فرض می کنیم فایلی به نام test.dat وجود دارد. با کد زیر آن را باز می کنیم. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! با استفاده از متد Seek می توان به هرجای فایل رفت و آنجا عمل خواندن را انجام داد: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! این دستور اشاره گر فایل را به بایت 100 فایل می برد. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! اشاره گر فایل را به 10 مین باید (از آخر) فایل می برد. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! 100 بایت از محل حاضر جلوتر می رود. برای خواندن یک تعداد بایت هم می توان به صورت زیر عمل کرد: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! که 100 بایت را می خواند (از بایت 100 تا 200) و درون آرایه می ریزد. (0 مشخص می کند که از کدام خانۀ آرایه شروع کند به ریختن بایت ها به درون آرایه) و در آخر هم یادتان نرود که فایل را ببندید: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! البته یک روش دیگر هم می توان استفاده کرد: همۀ فایل را درون آرایه ای از String ها بخوانیم و با آن مثل خطوط فایلمان رفتار کنیم: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! yam7818-05-2007, 06:10 PMبا استفاده از متد Seek می توان به هرجای فایل رفت و آنجا عمل خواندن را انجام داد: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! این دستور اشاره گر فایل را به بایت 100 فایل می برد. ممنون ولی من باز هم مشکل دارم... مثلا فرض کنید یک فایل پرسنلی داریم (ID - نام - نام خانوادگی -...) کاربر با وارد کردن ID می خواهد به بقیه اطلاعات دسترسی داشته باشد آنجا که دیگه نمی دونیم این آی دی در کدوم بایت قرار داره!! باید از اول تا آخر فایل رو seek کنیم؟ یا راه بهتری هم هست؟ hamidreza_buddy19-05-2007, 05:31 PMنه. مجبوریم از اول تا آخر فایل رو چک کنیم. اگه با مباحث «ذخیره سازی و بازیابی اطلاعات» آشنا باشی می شه این مشکلات رو رفع کرد (بهینه کرد) با استفاده از ساختمان داده هایی مثل B+ Tree ها (درخت های B پلاس). که دیگه لازم نیست همۀ فایل بررسی بشه و فقط یه قسمتی از فایل بررسی میشه. اگه واسه درس C هستش از اول تا آخر فایل رو بخون و یکی یکی چک کن. yam7821-05-2007, 02:49 PMواسه همون درس ذخیره می خوام ولی نباید فعلا بهینه باشه... یعنی هنوز به بی پلاس نرسیدیم:) ممنون از کمکت yam7807-06-2007, 07:57 AMنه. مجبوریم از اول تا آخر فایل رو چک کنیم. . باید از متد Seek کلاس FileStream استفاده کنیم. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! این دستور اشاره گر فایل را به بایت 100 فایل می برد. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! اشاره گر فایل را به 10 مین باید (از آخر) فایل می برد. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! 100 بایت از محل حاضر جلوتر می رود. [/code] سلام با این متد seek چه طوری میشه از اول تا آخر فایل رو خوند؟ ما که نمی دونیم آخر فایل آدرسش چیه؟ یعنی نمی دونیم که فایل چند بایتی هست ؟ yam7807-06-2007, 10:06 AMخدایا من هیچی از سی شارپ بلد نیستم:9: علاوه بر اینکه نمی دونم از متد seek چه زوری استفاده کنم، نمی دونم وقتی به اون نقطه که می خوام رسیدم، چه زوری فیلدهای رکوردم رو بخونم و نمایش بدم... این کد رو نوشتم !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! که رفتم دیدم متد Read ، int برمی گردونه... به جای Read باید چی بگذارم؟ در ضمن فیلد های BookName و AuthorName از نوع []char هستند چون می خواستم زول رکورد رو ثابت بگیرم. آیا می تونم به عنوان رشته بخونم یا بنویسم یا باید تبدیل کنم؟ اگه میشه اونوقت باز هم طول رکورد ثابت می مونه؟ دارم می میرم یکی کمک کنه ممنون :11: eng_a_h_b12-07-2007, 10:43 AMسلام می خواستم بدونم با چه کدی میشه ساعت سیستم رو تغییر داد. hamidreza_buddy15-07-2007, 09:25 AMخدایا من هیچی از سی شارپ بلد نیستم:9: علاوه بر اینکه نمی دونم از متد seek چه زوری استفاده کنم، نمی دونم وقتی به اون نقطه که می خوام رسیدم، چه زوری فیلدهای رکوردم رو بخونم و نمایش بدم... این کد رو نوشتم به نظر من براي راحت تر شدن كارت هر كدوم از ركوردارو توي يك خط از فايل بنويس‌(آخر هر ركورد enter بزن) براي خوندن هم از ReadLine استفاده كن كه اون رشته رو بر مي گردونه. * متد Read فقط يه كاراكتر بر مي گردونه. hamidreza_buddy15-07-2007, 09:31 AMسلام می خواستم بدونم با چه کدی میشه ساعت سیستم رو تغییر داد. ابتدا يه كلاس به نام Win32 تعريف مي كنيم: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! براي گرفتن زمان/تاريخ سيستم: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! براي تغيير دادن زمان سيستم يك شئ Win32 بساز و اون رو با اعداد دلخواه پر كن و بفرست به SetLocalTime() (البته به جاي out از ref استفاده كن) سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 5954]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن