C# Kortejlar C# kartejlarni e’lon qilish


C# fayllar oqimi bilan ishlash


Download 260.19 Kb.
bet6/28
Sana18.06.2023
Hajmi260.19 Kb.
#1574109
1   2   3   4   5   6   7   8   9   ...   28
Bog'liq
dasturlash tyorya 8 shrift

11 C# fayllar oqimi bilan ishlash
fayl oqimi bilan ishlash juda ko’p qulayliklarni olib keladi. FileStream yaratish FileStream obyektini yaratish uchun siz ushbu sinfning konstruktorlaridan ham, File sinfining statik usullaridan ham foydalanishingiz mumkin. FileStream konstruktorida juda ko'p yuklangan versiyalar mavjud, ulardan faqat bittasini, eng oddiy va eng ko'p ishlatiladiganini qayd etaman:
FileStream(string filename, FileMode mode)
Bu erda konstruktorga ikkita parametr uzatiladi: fayl yo'li va FileMode enum . Bu raqam faylga kirish rejimini bildiradi va quyidagi qiymatlarni qabul qilishi mumkin:
Qo'shish : Agar fayl mavjud bo'lsa, matn faylning oxiriga qo'shiladi. Agar fayl mavjud bo'lmasa, u yaratilgan. Fayl faqat yozish uchun ochiladi.
Yaratish : Yangi fayl yaratiladi. Agar bunday fayl allaqachon mavjud bo'lsa, uning ustiga yoziladi
CreateNew : Yangi fayl yaratiladi. Agar bunday fayl allaqachon mavjud bo'lsa, dastur xatolik yuz beradi.Ochish : faylni ochadi. Agar fayl mavjud bo'lmasa, istisno chiqariladi.OpenOrCreate : agar fayl mavjud bo'lsa, u ochiladi, agar bo'lmasa, yangisi yaratiladi Kesish : Agar fayl mavjud bo'lsa, u qayta yoziladi. Fayl faqat yozish uchun ochiladi. FileStream obyektini yaratishning yana bir usuli File sinfining statik usullaridan iborat:
FileStream File.Open(string file, FileMode mode);
FileStream File.OpenRead(string file);
FileStream File.OpenWrite(string file);
Birinchi usul FileMode obyekti berilgan faylni ochadi va FileStream fayl oqimini qaytaradi. Ushbu usulda bir nechta haddan tashqari yuklangan versiyalar ham mavjud. Ikkinchi usul o'qish uchun oqimni, uchinchisi esa yozish uchun oqimni ochadi. Oqimni yopish FileStream klassi fayl bilan bog'liq barcha resurslarni chiqarish uchun IDisposable interfeysini amalga oshiradi. Shunga ko'ra, FileStream bilan ishlashni tugatgandan so'ng, Dispose usulini chaqirish orqali u bilan bog'langan faylni chiqarish kerak. To'g'ri yopish uchun Dispose usulini chaqiradigan Close() usulini chaqirishingiz mumkin: FileStream? fstream = null;
try{fstream = new FileStream("note3.dat", FileMode.OpenOrCreate);// операции с fstream}
catch(Exception ex){ }finally{fstream?.Close();}
Yoki FileStream bilan bog'liq barcha resurslarni avtomatik ravishda chiqaradigan konstruksiyadan foydalanishingiz mumkin:
using (FileStream fstream = new FileStream("note3.dat", FileMode.OpenOrCreate))
{// операции с fstream}
FileStream xususiyatlari va usullari FileStream sinfining eng muhim xususiyatlarini ko'rib chiqing
Length xususiyati : oqim uzunligini baytlarda qaytaradiPosition xususiyati : oqimdagi joriy pozitsiyani qaytaradib Name xususiyati : FileStream-da ochilgan faylga mutlaq yo'lni qaytaradi Fayllarni o'qish/yozish uchun FileStream sinfining quyidagi usullaridan foydalanish mumkin :void CopyTo(Stream destination): joriy oqimdan maʼlumotlarni maqsadli oqimga koʻchiradi
Task CopyToAsync(Stream destination): CopyTo usulining asinxron versiyasi
void Flush(): bufer tarkibini faylga tozalaydi
Task FlushAsync(): Flush usulining asinxron versiyasi int Read(byte[] array, int offset, int count): Fayldan ma'lumotlarni bayt massiviga o'qiydi va muvaffaqiyatli o'qilgan baytlar sonini qaytaradi. U uchta parametrni oladi: array- fayldan o'qilgan ma'lumotlar joylashtiriladigan baytlar massivi offseto'qilgan baytlar joylashtiriladigan massivdagi baytlardagi ofsetni ifodalaydi count- o'qilishi kerak bo'lgan baytlarning maksimal soni. Agar faylda kamroq bayt bo'lsa, ularning barchasi o'qiladi. Task ReadAsync(byte[] array, int offset, int count): Read usulining asinxron versiyasi
Ikkita sinf System.IO nom maydonidagi kataloglar bilan ishlash uchun mo'ljallangan: Directory va DirectoryInfo .

Download 260.19 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   28




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling