读书人

《UNIX环境高级编程》札记-文件长度和

发布时间: 2013-10-11 14:52:39 作者: rapoo

《UNIX环境高级编程》笔记--文件长度和文件截短
1.文件长度stat结构的st_size成员以字节为单位表示文件的长度,此字段只对普通文件,目录文件和符号链接有意义。stat结构的st_blksize成员是对文件IO较合适的块长度,在介绍系统IO调用时,该值为4096B。stat结构的st_blocks成员是所分配的实际512字节块数量。
实践:

#include <stdio.h>#include <unistd.h>#include <fcntl.h>int main(void){        if(truncate("a.txt",10)<0){                perror("truncate");                return -1;        }        return 0;}
运行结果:yan@yan-vm:~/apue$ ll a.txt
-rw-rw-r-- 1 yan yan 5 Jul 10 07:12 a.txt
yan@yan-vm:~/apue$ ./a.out
yan@yan-vm:~/apue$ ll a.txt
-rw-rw-r-- 1 yan yan 10 Jul 10 07:15 a.txt
yan@yan-vm:~/apue$ od -c a.txt
0000000 1 2 3 4 5 \0 \0 \0 \0 \0
0000012
文件被自动填充为\0

读书人网 >编程

热点推荐