Работа с текстовыми файлами

Файлы бывают текстовые (в которых можно записывать только буквы, цифры, скобки и т.п.) и двоичные (в которых могут храниться любые символы из таблицы). В текстовых файлах не употребляются первые 31 символ кодовой таблицы ASCII (управляющие), а символы конца строки 0x13 (возврат каретки, CR) и 0x10 (перевод строки LF) преобразуются при вводе в одиночный символ перевода строки \n (при выводе выполняется обратное преобразование). Эти символы добавляются в конце каждой строки, записываемой в текстовый файл. При обнаружении в текстовом файле символа с кодом 26 (0x26), т.е. признака конца файла, чтение файла в текстовом режиме заканчивается, хотя файл может иметь продолжение.

Создать текстовый файл можно с помощью текстового редактора и с помощью программы. Рассмотрим пример создания текстового файла. Следующая программа записывает в файл строку из 65 символов, а затем переписывает в другой файл только английские буквы.

#include "stdafx.h"

#include <string.h>

int main()

{ FILE *f, *r; // Указатели на файлы

char ch, pr[65];

char text[]="1,2,3,4,5 i caught a fish alive, 6,7,8,9,10 i let it go again!";

 

f=fopen("FIL1.txt","w"); // Создание нового файла FIL1.txt

fputs(text,f); // Запись в файл строки text

fclose(f); // Закрытие файла FIL1.txt

f=fopen("FIL1.txt","r");// Открытие файла FIL1.txt для чтения

r=fopen("FIL2.txt","w"); // Создание нового файла FIL2.txt

while (!feof(f)) // Пока не конец файла FIL1.txt

{ ch=fgetc(f); // Чтение символа в ch из файла FIL1.txt

if (ch >='a'&&ch<='z') // Прочитанный символ - буква?

fputc(ch,r); // Запись в файл FIL2.txt символа из ch

}

fclose(r); // Закрытие файла FIL2.txt

rewind(f); // Возврат указателя на начало файла FIL1.txt

fgets(pr,65,f); // Чтение из файла FIL2.txt строки в переменную pr

printf("%s\n",pr); // Вывод строки pr на дисплей

r=fopen("FIL2.txt","r"); // Открытие файла FIL2.txt для чтения

while (!feof(r)) // Пока не конец файла FIL2.txt

{ ch=fgetc(r); // Чтение символа из файла FIL2.txt

putchar(ch); // Вывод символа ch на дисплей

}

printf("\n");

fclose(f); // Закрытие файлов








Дата добавления: 2015-02-10; просмотров: 650;


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

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

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

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