PDA

View Full Version : اضافه کردن متن به خط خاصی از فایل متنی



niloo17
شنبه 06 شهریور 1389, 21:37 عصر
سلام دوستان
من یک فایل متنی دارم خط به خط می خونم ویک رشته خاص را جستجو می کنم حالا می خوام به ته اون خط یک چیزی اضافه کنم
چه جوری می تونم این کارو انجام بدم

syntiberium
شنبه 06 شهریور 1389, 21:53 عصر
اگه منظورت اینه که اون خطی که رشته خاص رو اگه توش پیدا کردی یه رشته ای به آخرش اضافه بشه باید هر خطی را که می خونی این کاری که گفتی را روش انجام بدی و بعد همون موقع اون خط رو append کنی روی یه فایل دیگه توی همون فولدر . بعد فایل قبلی رو پاک کنی و اسم فایل جدید رو به اسم فایل قبلی تغییر بدی .

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

morteza271
شنبه 06 شهریور 1389, 22:16 عصر
فکر نمیکنم که روشی وجود داشته باشه که یه متنی رو به وسط یه فایل متنی اضافه کنی!!!
فقط میشه به انتهای فایل یه خط جدید اضافه کرد ولی به وسط فایل بعید میدونم...
موفق باشید...

sinashahab
شنبه 06 شهریور 1389, 22:26 عصر
یه کاری می تونی با دوتا حلقه بکنی :
بگیری هر خط از اون فایل رو تو یه لیست از نوع استرینگ بریزی و بعدش با یه حلقه ی کل خطها رو چک کنی که توشون اون کلمه هست یا نه ؟!

اگه بودش به آخر اون خط یه نوشته اضافه کنه .

و وقتی این حلقه که چم می کرد تموم شد یه حلقه دیگه بزاری که اون لیست رو به صورت متن در بیاره .

مشکلی هست ؟؟

amirh_karimifar
شنبه 06 شهریور 1389, 22:34 عصر
یه کار دیگم می تونی بکنی . اینکه تا قبل از اون کلمه ی مورد نظرتو و خود کلمه رو توی یه فایل دیگه بریز اون کلمه ی خودتو بهش اضافه کن . بعد همه رو برگردون به فایلت .

group45
یک شنبه 07 شهریور 1389, 17:58 عصر
سلام این یه مثال کلی یه ببین چطوری میتونی باش مانور بدی


File.Delete("file address.txt");
StreamWriter writer = File.AppendText("file address.txt");
writer.Write(s);
writer.Close();


راستی قبلش اینو نیاز داری



string s=null;
s = File.ReadAllText("file address.txt");

s.khoshfekran
یک شنبه 07 شهریور 1389, 21:38 عصر
فکر نمیکنم که روشی وجود داشته باشه که یه متنی رو به وسط یه فایل متنی اضافه کنی!!!
فقط میشه به انتهای فایل یه خط جدید اضافه کرد ولی به وسط فایل بعید میدونم...
موفق باشید...
دوست عزیز چرا وقتی بلد نیستی میگی روشی وجود نداره ؟؟:اشتباه: من تو چند پست این مسئله رو دیدم!!
--------------------
با استفاده از متد Seek از کلاس FileStream میتونید به هر نقطه ای از فایل بروید و با متد Write و WriteByte میتونید در اون نقطه هرچی که میخواین رو بنویسین!!!
با استفاده از کلاس هاس FileStream,File,BinaryReader,.... میتونین کارهی زیادی انجام بدین!!

ali_autumnal
یک شنبه 07 شهریور 1389, 21:46 عصر
یه کاری می تونی با دوتا حلقه بکنی :
بگیری هر خط از اون فایل رو تو یه لیست از نوع استرینگ بریزی و بعدش با یه حلقه ی کل خطها رو چک کنی که توشون اون کلمه هست یا نه ؟!

اگه بودش به آخر اون خط یه نوشته اضافه کنه .

و وقتی این حلقه که چم می کرد تموم شد یه حلقه دیگه بزاری که اون لیست رو به صورت متن در بیاره .

مشکلی هست ؟؟


بهترین روش همین روش هست.

البته فقط با یک حلقه while هم میشه اینکار رو انجام داد.

در این حلقه شرط رو براین میزاریم که تازمانی که به انتهای فایل اصلی نرسیده ای بخون و برو جلو.
در خط بعدی شرطی میزاریم اگه این رشته مورد نظر بود بجاش این یکی رو بزار و در غیر اینصورت هر چی میخونی در فایل بعدی کپی (بنویس) کن.

موفق باشید
علی پاییزی
--------------------

فکر نمیکنم که روشی وجود داشته باشه که یه متنی رو به وسط یه فایل متنی اضافه کنی!!!
فقط میشه به انتهای فایل یه خط جدید اضافه کرد ولی به وسط فایل بعید میدونم...
موفق باشید...


دوست عزیز:
در برنامه نویسی غیر ممکن وجود ندارد.

موفق باشی
علی پاییزی

morteza271
یک شنبه 07 شهریور 1389, 22:16 عصر
دوست عزیز چرا وقتی بلد نیستی میگی روشی وجود نداره ؟؟:اشتباه: من تو چند پست این مسئله رو دیدم!!
--------------------
با استفاده از متد Seek از کلاس FileStream میتونید به هر نقطه ای از فایل بروید و با متد Write و WriteByte میتونید در اون نقطه هرچی که میخواین رو بنویسین!!!
با استفاده از کلاس هاس FileStream,File,BinaryReader,.... میتونین کارهی زیادی انجام بدین!!

ببخشید من فقط نظرمو دادم،شرمنده!!!چرا میزنین حالا!!!
در ضمن خوب بود گفتم فکر کنم وگرنه منو میکشتید!!!
--------------------


دوست عزیز:
در برنامه نویسی غیر ممکن وجود ندارد.

منظورم ازین که روشی وجود نداره این بود که روش مسقیمی وجود نداره(که البته دوست خوبمون s.khoshfekran نشون دادن که روش مستقیم هم هست) وگرنه میدون توی برنامه نویسی غیرممکن وجود نداره!!!
با برنامه نویسی هرکاری میشه کرد!!!

Suniiman
چهارشنبه 09 تیر 1400, 19:46 عصر
دوست عزیز چرا وقتی بلد نیستی میگی روشی وجود نداره ؟؟:اشتباه: من تو چند پست این مسئله رو دیدم!!
--------------------
با استفاده از متد Seek از کلاس FileStream میتونید به هر نقطه ای از فایل بروید و با متد Write و WriteByte میتونید در اون نقطه هرچی که میخواین رو بنویسین!!!
با استفاده از کلاس هاس FileStream,File,BinaryReader,.... میتونین کارهی زیادی انجام بدین!!

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