缓冲区的思维模式==fflush
#include<stdio.h>
#include<stdlib.h>void main(){ FILE*read = fopen("1.txt","w"); if (!read) { printf("文件为空"); system("pause"); return; } fputs("你好a\n", read); fflush(read); fputs("你好b\n", read); fputs("你好c\n", read); fclose(read); system("pause");
}
缓存区的目的就是为了解决性能问题,提高程序运行效率.
生成大文件.
#include<stdio.h>
#include<stdlib.h>#include<string.h>void main() { FILE*read = fopen("D:/1/1.txt", "wb"); if (!read) { printf("文件为空"); system("pause"); return; } fseek(read, 6, SEEK_SET); fputc('\0', read); fclose(read);
system("pause");
}#include<stdio.h>#include<stdlib.h>#include<string.h>void main() { for (size_t i = 0; i < 5; i++) { char out[50] = { 0 }; sprintf(out, "D:/1/%d.txt", i); FILE*read = fopen(out, "wb"); if (!read) { printf("文件为空"); system("pause"); continue; } fseek(read, 6, SEEK_SET); fputc('\0', read); fclose(read); } system("pause");}
通过ftell函数,获取文件大小.
#include<stdlib.h>
#include<stdio.h>#include<string.h>void main() {
FILE*read = fopen("D:/1/1.txt", "rb");
if (!read) { printf("文件为空"); system("pause"); return; } fseek(read, 0, SEEK_END); int count = ftell(read); fclose(read); printf("文件大小为:%d\n", count);
system("pause");
}