|
Dasturlash 1 swd 1316 matnli fayllar bilan ishlash operatorlari 11
|
bet | 3/4 | Sana | 02.12.2023 | Hajmi | 5,89 Mb. | | #110000 |
Bog'liq hTxjx4etD58fbBlkpvM1vzFvHNhiopHM7SWRHK3JOqimlarni ochish va yopish - Oqim ochilishi uchun, oldindan kiritilgan FILE tipidagi strukturasidan foydalaniladi
- FILE *
- Misol uchun FILE * fp
- fp = fopen(“t.txt”, “r”)
- “w”- Yangi fayl yozish uchun ochiladi. Agar fayl mavjud bo’lmasa yangidan yaratiladi.
- “r” - Mavjud fayl faqat o’qish uchun ochiladi.
- “a” - Fayl davom ettirish uchun ochiladi.
- “w+” - Fayl yozish va tahrirlash uchun ochiladi. Faylni ixtiyoriy joyidan o’qish yoki yozish mumkin.
- “r+”- fayl ixtiyoriy joyidan o’qish yoki yozish mumkin, lekin fayl oxiriga qo’shish mumkin emas.
- “a+” - Fayl ixtiyoriy joyidan o’qish va yozish uchun ochiladi. Quyidagi “w+” rejimdan farqli fayl oxiriga ma’lumot qo’shish mumkin.
Fayllar bilan ishlashga misol (standart) Faylni ochishdagi xatolik - FILE *f;
- f = fopen(“uch.txt", "r");
- if ( f == NULL ) {
- puts(“fayl topilmadi.");
- return; }
- faylni nomi noto’g’ri
- fayl yo’q
- fayl boshqa dastur tomonidan ishlatilmoqda
- Agarda fayl ochilmasa, u holda fopen funksiyasi NULL qiymat chiqaradi (nulli qiymat)!
- FILE *f;
- f = fopen(“turt.txt", "w");
- if ( f == NULL ) {
- puts(“fayl ochilmadi.");
- return; }
- fayl nomi noto’g’ri
- fayl «faqat o’qish uchun»
- fayl boshqa dastur tomonidan ishlatilmoqda
Sonlar tugaganligini qanday aniqlash mumkin? - FILE *f;
- int n, x;
- f = fopen("input.txt", "r");
- ...
- n = fscanf ( f, "%d", &x );
- if ( n ! = 1 )
- puts ( “Sonni o’qib bo’lmadi" );
- fscanf funksiyasi quyidagi qiymatlarni chiqaradi o’qilgan sonlar sonini;
- 0, agarda faylni o’qishda xatolik bo’lsa;
- – 1, agarda faylni oxiriga borilsa.
- fayl oxiriga borildi
- «sonni» uchratilmadi
|
| |