Текстовые файлы
Рассмотрим работу с текстовым файлом в Си на примере. Создайте на диске С текстовый файл с именем TextFile.txt. Наберите в этом файле такие строки:
String_2
String_3
Сохраните файл.
А это код программы на C, которая открывает наш файл и считывает из него строки:
Чтоб открыть текстовый файл в C используем функцию fopen:
первый аргумент функции fopen указывает на файл, а второй говорит, что файл открыт для чтения из него.
Строки считываем с помощью функции fgets:
первый аргумент функции fgets указвает на массив символов, в котором будут сохранятся полученные строки, второй аргумент — это максимальное количество символов для считывания, третий — наш файл.
После завершения работы с файлом, его надо закрыть:
Получаем:
Русские буквы в строках тоже проходят.
Кстати, эту программу я сделал в Eclipse. Как работать с C/C++ в Eclipse можно посмотреть здесь.
Итак, мы открыли и считали данные из текстового файла.
Теперь научимся программно создавать текстовый файл и записывать в него данные.
Пример:
Создаем текстовый файл для записи в него данных:
если файл уже имеется, то он будет открыт, и все данные из него будут удалены.
C-строка cString, и число nVal записываются программой в текстовый файл. cNewLine — это просто переход на новую строку.
Записываем данные в текстовый файл с помощью функции fprintf:
первый аргумент здесь — наш файл, второй — форматная строка, третий и более — нужное для этого формата количество аргументов.
Если нужно открыть файл для записи в конец данных существующего файла (т.е. дописать файл), то тип доступа к файлу обозначим «a»:
Добавим к «а» плюс, в этом случае, если файл не существует, то он будет создан:
Открыть существующий файл для записи и чтения можно так:
Открыть существующий (содержимое его стирается) или создать новый файл для чтения и записи: