函数原型:

#include <unistd.h>
int ftruncate(int fd, off_t length);        //改变文件大小为length指定大小;返回值 执行成功则返回0,失败返回-1。

  函数ftruncate会将参数fd指定的文件大小改为参数length指定的大小。参数fd为已打开的文件描述词,而且必须是以写入模式打开的文件。如果原来的文件大小比参数length大,则超过的部分会被删去。     

test.c

#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<unistd.h>
#include<strings.h>
#include<stdio.h>
int main(int argc,char** argv)
{
    struct stat st;
    bzero(&st,sizeof(st));
    stat(argv[1],&st);
    printf("%s %ld\n",argv[1],st.st_size);
    int fd=open(argv[1],O_RDWR);
    ftruncate(fd,20);
    bzero(&st,sizeof(st));
    stat(argv[1],&st);
    printf("%s %ld\n",argv[1],st.st_size);
    close(fd);
    return 0;
}

Linux 改变文件大小的方法

总结

以上所述是小编给大家介绍的Linux 改变文件大小的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。