PDA

View Full Version : سوال: ساخت چندین فایل متنی و ذخیره داده در آنها ... لطفا راهنمایی کنید



ostovarit
دوشنبه 15 شهریور 1389, 15:36 عصر
با سلام و خسته نباشید ...

من یک SaveFileDialog دارم که در زمان ذخیره سازی نمایش میدم پس از وارد کردن نام فایل و کلیک روی گزینه save میخوام به تعدادی مشخص از اون فایل با نام های زیر بسازم :
filename1.txt , filename2.txt , filename3.txt , ...

تا اینجا کار مشکلی نیست ...

حالا میخوام داده های متنی رو که داخل یک richtextbox هست بین این فایلها تقسیم کنم ... بخشهای مختلف متن با "," از هم جدا شده است و بر مبنای تعداد "," تقسیم صورت میگیرد برای مثل 100 تا "," اول و مطالب بینش رو در فایل اول و 100 تای بعدی در فایل دوم و الی اخر ...

چطور این کار رو انجام بدم ؟

fjm11100
دوشنبه 15 شهریور 1389, 15:55 عصر
کاری نداره تکست را بر اساس این کارکتر , که میگی split کن (از متدهای نوعهای string مثل خصوصیت text کنترلت است)
بعد یک آرایه داری کافیه توی یک حلقه هر عنصر آرایه ات را در یک فایل جدا ذخیره کنی

ostovarit
دوشنبه 15 شهریور 1389, 15:59 عصر
کاری نداره تکست را بر اساس این کارکتر , که میگی split کن (از متدهای نوعهای string مثل خصوصیت text کنترلت است)
بعد یک آرایه داری کافیه توی یک حلقه هر عنصر آرایه ات را در یک فایل جدا ذخیره کنی

اگر بشه میخوام از ارایه استفاده نکنم ...
- میشه مثلا substring کنم از نقطه صفر تا جایی که count کاراکتر "," میشه 100 تا ؟
بعد دوباره از همون نقطه برای فایل بعدی اقدام کنم؟
و هر sunstring رو تو یک فایل بریزم ...

fjm11100
دوشنبه 15 شهریور 1389, 19:19 عصر
شرمنده من سوالتو درست نفهمیده بودم اما با روشی که گفتم هم میتونی یعنی توی حلقه ات 100 تا 100 تا جدا کنی توی یک فایل بریزی
اما روش خودتو نگرفتم میخوای از صفر تا جایی که 100 تا , رد کردی substring بگیری؟ از کجا میخوای طول این substring را بدست بیاری؟ یعنی از کجا میدونی 100 امین , کارکتر چندم متن میشه؟
یه روش دیگه اینه که با string خودت به شکل آرایه ای از کاراکتر برخورد کنی مثلا:
"]
حالا i را از صفر تا طول متن خودت توی حلقه جلو ببر و مدام چک کن که اگر توی این جلو بردن 100 تا , شمرده شد یک فایل از مجموعه کارکترهای خوانده شده بساز.

mehrsa_fr
دوشنبه 15 شهریور 1389, 20:12 عصر
من این کدارو ابتکاری نوشتم ببین به دردت می خوره


string text = "aaaaa,bbbbb,ccccc,dddd,eeee,";
int z = 0;
for (int i = 0; i < text.Length; i++)
{
if (text.Substring(i, 1) == ",")
{
Console.WriteLine(text.Substring(z, i - z));
i++;
z = i;
}
}
Console.ReadLine();


البته تو محیطه console ولی با یکم تغییر میتونی استفاده کنی:چشمک:

ostovarit
دوشنبه 15 شهریور 1389, 21:57 عصر
شرمنده من سوالتو درست نفهمیده بودم اما با روشی که گفتم هم میتونی یعنی توی حلقه ات 100 تا 100 تا جدا کنی توی یک فایل بریزی
اما روش خودتو نگرفتم میخوای از صفر تا جایی که 100 تا , رد کردی substring بگیری؟ از کجا میخوای طول این substring را بدست بیاری؟ یعنی از کجا میدونی 100 امین , کارکتر چندم متن میشه؟
یه روش دیگه اینه که با string خودت به شکل آرایه ای از کاراکتر برخورد کنی مثلا:

حالا i را از صفر تا طول متن خودت توی حلقه جلو ببر و مدام چک کن که اگر توی این جلو بردن 100 تا , شمرده شد یک فایل از مجموعه کارکترهای خوانده شده بساز.

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