русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Файлы

Прежде чем читать информацию из файла или записывать в него, нужно его открыть. В библиотеке <stdio.h>для этого имеется специальная функция:

FILE *fopen(char *fname, char *mode);

где *fname – имя файла, *mode – режим (табл. 8). Функция возвращает указатель (ссылку) на файл, который должен быть предварительно описан.

Таблица 8

Таблица режимов для открываемого файла

Режим Действие
“r” Открыть для чтения
“w” Создать для записи
“a” Открыть для добавления в существующий файл
“rb” Открыть двоичный файл для чтения
“wb” Создать двоичный файл для записи
“ab” Открыть двоичный файл для добавления
“r+” Открыть для чтения и записи
“w+” Создать для чтения и записи
“a+” Открыть для добавления или создать для чтения и записи
“r+b” Открыть двоичный файл для чтения и записи
“w+b” Создать двоичный файл для чтения и записи
“a+b” Открыть двоичный файл для добавления или создать для чтения и записи
“rt” Открыть текстовый файл для чтения
“wt” Создать текстовый файл для записи
“at” Открыть текстовый файл для добавления
“r+t” Открыть текстовый файл для чтения и записи
“w+t” Создать текстовый файл для чтения и записи
“a+t” Открыть текстовый файл для добавления или создать для чтения и записи

Например. FILE *fu;*fuуказатель на файловый тип

Пример. Объявим указатели на переменные файлового типа

FILE *uin, *uout; // (указатели на переменные файлового типа)

uin = fopen(“name1”, “r”); //открыть файл “name1” для чтения и далее

// идентифицировать как uin

uout = fopen(”name2”, “w”); //открывается для записи и связывается с

// идентификатором uout.

Если производится открытие несуществующего файла, то он создается.

Для открытия файла с именем test рекомендуется метод, который позволяет определить ошибку при открытии файла.

# include <stdio.h> // работа с файлами и константа NULL (FILEOPEN.C)

# include <stdlib.h> //для функции exit()

void main()

{

FILE *fp;

if ((fp=fopen("test","w"))==NULL)

{

puts("Не могу открыть файл\n"); // печать строки

exit(1);

}

puts("Файл открыт\n"); }

В библиотеке <stdio.h> определены также следующие функции работы с файлами ( fp – указатель на файл, возвращаемый функцией):

· fopen( ) – открытие файла;

· int fclose(FILE *fp) – закрытиефайла. Возвращает нуль, если операция выполнена успешно и иное значение в противном случае. Функция является рекомендуемой, поскольку файлы при нормальном завершении закрываются автоматически;

·int puts(int ch, FILE *fp) – записать символы типа int в поток. Возвращается записанный символ, если операция была успешной. Если произошла ошибка возвращается EOF;

· int gets(FILE *fp) – прочесть символ типа intиз потока. Возвращает EOF, если достигнут конец файла, или произошла ошибка при чтении файла;

· int feof(FILE *fp)– возвращает значение «истинно», если достигнут конец файла и нуль в противном случае;

Пример. while (!feof(fp)) {ch=getchar(fp);}

Выполняется ввод символа, пока не достигнут конец файла;

· int ferror(FILE *fp) – возвращает значение нуль, если обнаружена ошибка. Рекомендуется для обнаружения ошибок чтения и записи после каждой операции с файлами;

· int fprintf(FILE *fp, const, char *string, …)– форматированная запись в файл. Содержит указатель на файл и управляющую строку со списком;

· int fscanf(ILE *fp, const,char *string) –форматированное чтение из файла;

· unsign fread(void *buf, int bytes, int c, FILE *fp) – читает блок данных из потока (буферный обмен); buf – указатель на область памяти, откуда происходит обмен информации; с– количество единиц записи длиной bytes, которая будит считываться.

· unsign fwrite(void *buf, int bytes, int c, FILE *fp) – пишется блок данных в поток;

· int remove(char *filename)– уничтожается файл, возвращается нуль при успешной операции;

· unsign rewind( FILE *fp) – устанавливается указатель на начало файла;

· int fseck( FILE *fp, long numbyte, int orig) – установить указатель позиции файла в заданное место, numbyte – количество байт от точки отсчета (0,1,2), orig – макрос 0 – начало, 1– текущая позиция, 2 – конец;

· void abort() –– немедленное прекращение программы без закрытия файлов и без освобождения буферов, функция описана в библиотеке <stdlib.h>.

Просмотров: 622


Вернуться в оглавление



Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.