StreamWriter
Mamataliyev Diyorbek
Assalomu alaykum. C# da yozilgan dastur natijasini nafaqat Console oynasiga, biror matnli faylga ham yozib qo'yish imkoniyati mavjud. Buning uchun System.IO
nomlar makoniga tegishli bo'lgan StreamWriter sinfidan foydalanish juda qulay. Ishonavering, buni o'rganish ham oson. Demak boshladik.
StreamWriter sinfidan foydalanish uchun eng avvalo System.IO
nomlar makonini chaqiramiz. So'ng fayl nomini ko'rsatgan holda StreamWriter sinfidan obyekt olamiz. Masalan mana bunday:
Yuqoridagi kodimizda fayl1 - obyekt nomi, endi sonlar.txt fayliga shu nom bilan murojaat qilamiz. Qavs ichidagi nom esa sizga tanish, bu biz yozmoqchi bo'lgan faylning to'liq nomi. Bizning holatda fayl c diskda papka1 nomli papkada joylashgan.
Shuningdek, fayl manzilini ko'rsatishda faqatgina fayl nomini yozish ham mumkin:
Bu holatda dasturingiz fayllari joylashgan bin nomli papka ichida yangi fayl ochiladi.
Yangi faylni ochdik, endi unga qanday yozamiz? Sizga eng oson va to'g'ri yo'nalish: Avvalgi dasturlaringizda Console oynasiga ma'lumotni chop etish uchun foydalanilgan Console.Write
va Console.WriteLine
funksiyalaridagi Console
so'zi o'rniga StreamWriterdan olingan obyekt nomini yozsangiz bas. Misol tariqasida c diskning o'zida yangi fayl ochib, unga 1 dan 10 gacha sonlarni yozib ko'ramiz:
Yangi faylga matn yozilishini o'zingiz ko'rish uchun yuqoridagi dastur kodini ishlatib ko'ring.
Yana bir foydali ma'lumot: Faylli oqim(StreamWriter)dan foydalanib ma'lumotlarni chop etish matnli oqim(Console)dan ko'ra ancha tez ishlaydi. Bu sizga ko'p ma'lumotlar chop etish kerak bo'lgan masalalarda ancha qo'l keladi.
Demak, yuqorida keltirilgan misoldagi new file.txt nomi o'rniga new file.doc, new file.ppt kabi boshqa nomlar yozishimiz ham mumkin ekan. Natijada matn boshqa turdagi matnli faylga yoziladi. Boshqa kengaytmali fayllarga yozib ko'rish sizga vazifa bo'lib qoladi.
E'tiboringiz uchun rahmat.
Last updated
Was this helpful?