如何在程序中判断一个文件的大小
要读写文件,但是当文件过大的时候,就不往里写了
请问如何在程序中判断一个文件的大小呢
有什么标准函数吗
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
要读写文件,但是当文件过大的时候,就不往里写了
请问如何在程序中判断一个文件的大小呢
有什么标准函数吗
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
使用文件描述符。
使用lseek(),可以返回文件大小。
使用, man lseek 察看该函数的参数。原理就是从文件未尾开始,偏移量为0。返回就是文件的大小了。字节数。
fd = open(filename, mode);
len = lseek(fd, 0, SEEK_END);
使用文件指针FILE *file.
char ch[1];
unsigned long len = 0;
file = fopen(filename,mode);
if(file==NULL)
{}
while((fread(ch,file,1,1, file)==1) && !foef(file))len++;
.
.
.
.
复制代码
这是我刚才在Linux 2.6内核 下做的实验.fstat 肯定可以满足你的要求.
得看什么情况。
如果文件处于打开的情况,就用 ftell 或者 fstat,方便些。
如果文件还没有打开,就用 stat,这样就不用打开了。
3ks,已解决
谢谢楼上各位
stat是标准方法,或者读取ls的输出也可