Файл режимдері. Еркін қатынасты файлдар

Файлды ашу режимдері:

r – оқу үшін файлды ашу;

w – жазу үшін файл құру. Егер файл бар болса, жаңасымен алмастырылады;

a – жазу үшін файл құру. Егер файл бұрыннан бар болса, онда деректер файл соңына жазылады;

r+ – оқу және жазу үшін файл ашу;

w+ – жаңарту үшін файл құру. Файл бар болса, ол өшіріледі;

а+ – жаңарту үшін файл құру, бұрыннан бар болса, деректер файл соңына жазылады.

Файлдан оқуға мысал:

#include <conio.h>

#include <stdio.h>

int main()

{

int bal;

char name[15];

FILE *file;

if ((file = fopen("1.txt","r")) == NULL)

printf("Файл ашу немесе құру мүмкін емес \n");

else{

for(;;){

if (feof(file))

break;

fscanf(file,"%d %s", &bal, name);

printf ("%d %s\n", bal, name);

}

}

fclose(file);

getch();

return 0;

}

if (file = fopen("1.txt","r")) == NULL) – файлды оқу режимінде ашамыз;

if feof(file)) – файлдың аяқталу шартын тексереді. Егер барлық файл оқылған болса, құрылым іске қосылады және break операциясын орындайды;

fscanf(file,"%d %s", &bal, name) – файлдан деректерді оқып, оны көрсетілген айнымалыға жазады, scanf() сияқты, тек енгізілген деректерді экраннан емес, файлдан оқиды.

Еркін қатынасты файлдар. Еркін қатынасты файлдардың белгілі бір ұзындығы болады.

Еркін қатынасты файлға қалған деректерді қайта жазып отырмай-ақ, жазбаларды жеңіл қосуға, жоюға болады. Бұл бір жолды бірнеше рет өзгертіп жазған кезде ыңғайлы.

Еркін қатынасты мәтіндік файлға деректер жазу функциясы - fwrite. Символдардың, цифрлардың санына тәуелсіз, дерек үшін белгілі бір ұзындық бөледі. Бұл ұзындық функцияда беріледі мысалы (fwrite):

#include <conio.h>

#include <stdio.h>

int main()

{

int bal;

FILE *file;

if ((file = fopen("3.txt","w")) == NULL)

printf("Файлды ашу немесе құру мүмкін емес \n");

else{

for(int i=0; i<5;i++){

scanf("%d", &bal);

fwrite (&bal, sizeof(int),1, file );

}

}

fclose(file);

getch();

return 0;

}

Функция fread:

fread(&bal, sizeof(int),1, file) –fread функциясының барлық аргументтері fwrite аргументтеріне ұқсас. Fwrite үшін – файлға айнымалыдан жазылады, ал fread функциясы үшін – файлдан айнымалыға мәндер оқылады.

Sizeof операторы элементтің байттағы өлшемін орнатады

 

Негізгі әдебиет: 6[280-282, 411-413], 7[98-109]

Қосымша әдебиет: 18[211-222], 19[35-38]

 








Дата добавления: 2015-09-11; просмотров: 5782;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.