Строковые файлы. Лекция 2

Содержание

Слайд 2

Пример 1. Функция feof()

FILE *fp;
char c;    
fp = fopen("my_text.txt", "rt");   

Пример 1. Функция feof() FILE *fp; char c; fp = fopen("my_text.txt", "rt");
while( !feof(fp) )  // Пока не достигнут конец файла
   {
c = getc(fp);
   putchar(c);  
   } . . .

Слайд 3

Предотвращение зацикливания

int k=0;
. . .
while( условие )
{

Предотвращение зацикливания int k=0; . . . while( условие ) { k++;
k++;
if( k>1000) {
write(“k==%d\n”, k);
break; }
// тело цикла
}

Слайд 4

Пример 2. Текстовый файл вывести на экран построчно

char buf[81];
FILE *fp;
fp = fopen("mytext.txt",

Пример 2. Текстовый файл вывести на экран построчно char buf[81]; FILE *fp;
“rt");
while(!feof(fp))
{
fgets(buf, 80, fp); // Чтение строки из файла
printf(“%s”, buf);
}

Слайд 5

Создать текстовый файл, представленный в виде строк

Точка – окончание ввода
Мама
мыла
раму
.

Создать текстовый файл, представленный в виде строк Точка – окончание ввода Мама мыла раму .

Слайд 6

Пример 3а. Создать текстовый файл, представленный в виде строк

char buf[101];
FILE *fp;
fp =

Пример 3а. Создать текстовый файл, представленный в виде строк char buf[101]; FILE
fopen("mytext.txt", "wt");
scanf(”%s”, buf); // Ввели строку 1-ю строку
while( buf[0] != ‘.’ ) // Точка – окончание ввода
{
fputs(buf, fp); // Запись строки в файл
scanf(“%s”, buf);
}

Слайд 7

Результат

Мамамылараму

Результат Мамамылараму

Слайд 8

Пример 3б. Создать текстовый файл, представленный в виде строк

char buf[101];
FILE *fp;
fp =

Пример 3б. Создать текстовый файл, представленный в виде строк char buf[101]; FILE
fopen("mytext.txt", "wt");
scanf(”%s”, buf); // Ввели строку 1-ю строку
while(buf[0] != ‘.’) // Точка – окончание ввода
{
fputs(buf, fp); // Запись строки в файл
putc(‘\n’, fp); // Дописываем в файл символ перевода строки
scanf(“%s”, buf);
}

Слайд 9

Результат

Мама
мыла
раму

Результат Мама мыла раму

Слайд 10

Пример 4. Функция fgets()

После операции чтения из файла файловый указатель смещается на

Пример 4. Функция fgets() После операции чтения из файла файловый указатель смещается
количество прочитанных символов.
while(fgets(buf, 80, fp) != NULL)
{
printf(“%s”, buf);
}

Слайд 11

Другие возможности при открытии файла

rt - открыть текстовой файл для чтения;
wt

Другие возможности при открытии файла rt - открыть текстовой файл для чтения;
- создать текстовый файл для записи;
at - дополнить текстовый файл;
rt+ - открыть текстовой файл для чтения и записи;
wt+ - создать текстовый файл для чтения записи;
at+ - дополнить текстовый файл с предоставлением возможности записи и чтения.

Слайд 12

Пример 5а.

FILE *f1, *f2;
f1 = fopen(“text1.txt", “rt+");
f2 = fopen(“text2.txt", “rt");

Пример 5а. FILE *f1, *f2; f1 = fopen(“text1.txt", “rt+"); f2 = fopen(“text2.txt",

while (fgets(buf, 80, f1) != NULL ); // указатель установился в конце файла
while(fgets(buf, 80, f2) != NULL)
{
fputs(buf, f1); // Запись строки в файл
}

Слайд 13

Пример 5б.

FILE *f1, *f2;
f1 = fopen(“text1.txt", “at");
f2 = fopen(“text2.txt", “rt");

Пример 5б. FILE *f1, *f2; f1 = fopen(“text1.txt", “at"); f2 = fopen(“text2.txt",

while(fgets(buf, 80, f2) != NULL)
{
fputs(buf, f1); // Запись строки в файл
}

Слайд 14

Пример 6. Создать файл из 10 целых чисел

FILE *f;
f = fopen(“numbers.num", “wb");

Пример 6. Создать файл из 10 целых чисел FILE *f; f =

int i, n;
for(i=0; i<10; i++)
{
scanf(“%d”, &n);
fpintf(f, “%6d”, n);
}
Какова максимальная разрядность вводимых чисел?
Имя файла: Строковые-файлы.-Лекция-2.pptx
Количество просмотров: 22
Количество скачиваний: 0