Функция записи в файл
Запись в файл на нижнем уровне осуществляется побайтно, без буферизации, с помощью функции write.
Синтаксис:
int write(int fd, char *buffer,int count);
где переменные fd, buffer, count имеют тот же смысл, что и для вызова функции read.
Функция возвращает количество фактически переданных байтов.
Алгоритм записи в файл похож на алгоритм чтения: указатель циклически перемещается в соответствии с количеством переданных в файл байтов до завершения процесса передачи данных в файл. Когда запись завершается, операционная система корректирует размер файла.
Функция прямого доступа к файлу
Функция read при корректном выполнении осуществляет последовательное чтение данных из файла. Однако при работе с файлами на нижнем уровне можно изменять порядок доступа к данным с последовательного на произвольный. Для этого используется функция fseek.
Синтаксис:
int fseek(FILE *f, long off, int org);
где f – указатель на файл;
off – позиция смещения;
org – начало отсчета.
Смещение off задается выражением или переменной и может быть отрицательным, то есть возможно перемещение как в прямом, так и в обратном направлениях. Начало отсчета org задается одной из определенных в файле <stdio.h> констант.
Дата добавления: 2015-02-16; просмотров: 614;