当前位置: 技术问答>linux和unix
c源码实现创建固定大小的文件
来源: 互联网 发布时间:2017-04-26
本文导语: 怎么用c源码在应用程序中创建一个256*1024大小的文件 | FILE *f = fopen("test","w"); fseek(f,SEEK_CUR,256*1024-1); fputc(0,f); 这样就可以了。 或者用linux api。 int ftruncate(int fd, off_t length) 空洞是空洞,但是**文...
怎么用c源码在应用程序中创建一个256*1024大小的文件
|
FILE *f = fopen("test","w");
fseek(f,SEEK_CUR,256*1024-1);
fputc(0,f);
这样就可以了。
或者用linux api。
int ftruncate(int fd, off_t length)
空洞是空洞,但是**文件大小**是确实是256*1024了,只是占用的磁盘很少。这种方法速度最快。
否则就一直填充256*1024字节的数据进去,不过这个创建速度很慢。
fseek(f,SEEK_CUR,256*1024-1);
fputc(0,f);
这样就可以了。
或者用linux api。
int ftruncate(int fd, off_t length)
空洞是空洞,但是**文件大小**是确实是256*1024了,只是占用的磁盘很少。这种方法速度最快。
否则就一直填充256*1024字节的数据进去,不过这个创建速度很慢。
|
直接建立一个空的256*1024(全部写上0xFF)的固定大小的文件不就好了。
#define SIZE (256*1024)
int write_bytes = 0, write_size = 0;
char buffer[1024];
memset(buffer, 0xFF, sizeof(buffer));
FILE fp = fopen("file.bin", "wb");
if(fp){
while(SIZE){
if(SIZE
#define SIZE (256*1024)
int write_bytes = 0, write_size = 0;
char buffer[1024];
memset(buffer, 0xFF, sizeof(buffer));
FILE fp = fopen("file.bin", "wb");
if(fp){
while(SIZE){
if(SIZE
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!
©2012-2021,