Изменить размер файла
#include <unistd.h>int chsize( int filedes,long size );
libc
Функция chsize() увеличивает или уменьшает файл, определяемый filedes, до размера size байтов. Файл дополняется символами NUL
('\0'), если его необходимо увеличить.
Функция chsize() игнорирует рекомендательные блокировки, которые могут быть установлены функцией fcntl(). |
#include <stdlib.h>#include <stdio.h>#include <unistd.h>#include <fcntl.h>#include <sys/stat.h>int main( void ){int filedes;filedes= open( "file", O_RDWR | O_CREAT,S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP );if ( filedes!= -1 ){if ( chsize( filedes, 32 * 1024L ) != 0 ){printf( "Error extending file\n" );}close( filedes );return (EXIT_SUCCESS);}return (EXIT_FAILURE);}
ЗОСРВ «Нейтрино»
close(), creat(), errno, ftruncate(), open()
Предыдущий раздел: Описание API системной библиотеки