关于获得文件超过2G,超过4G文件大小的方法

news/2024/12/21 0:26:12/

获得文件属性(大小等)的函数有stat/fstat/lstat,头文件为:

#include<sys/types.h>
#include<sys/stat.h>

int stat(const char *restrict pathname, struct stat *restrict buf);
提供文件名字,获取文件对应属性。
int fstat(int filedes, struct stat *buf);
通过文件描述符获取文件对应的属性。文件打开后这样操作
int lstat(const char *restrict pathname, struct stat *restrict buf);
连接文件
对于一般的文件(小于2G),用int类型来表示返回的文件大小(st_size),当文件超过2G,就会出现问题,首先类型由int变成unsigned int /long(可以表示小于4G的文件)或long long(超过4G的文件)。这样编译后 ,还是不能正确得到文件大小,我的解决方法是在编译的时候用gcc  -D_FILE_OFFSET_BITS=64 -D_LARGE_FILE 源文件,同时运用这两个解决方案,就可以获取大文件的文件属性了。

unsigned long get_filesize(const char *filename)

  3 {
  4     struct stat buf;
  5     if((stat(filename,&buf))<0)
  6     {
  7        fprintf(stderr,"EACCES:%s\n",strerror(EACCES));
  8        errno=ENOENT;
  9        perror(filename);
 10        return 0;
 11     }
 12     return (usigned long)buf.st_size;

 13 }



http://www.ppmy.cn/news/808409.html

相关文章

大文件操作及处理(超过500M)

一、读取大文件 不要一行行读取&#xff08;太慢&#xff09;&#xff0c;先将文件内容全部读入内存&#xff08;动态分配的&#xff09;&#xff0c;再在内存的基础上操作。 ftell&#xff08;&#xff09; 文件操作&#xff1a;偏移到文件末尾 或者一部分比如4MB&#xff…

linux拷贝5g文件,电脑使用U盘复制5G文件提示“复制文件过大无法复制”如何解决...

‍‍ 新购买的U盘容量为8G&#xff0c;内存空间足够大了&#xff0c;复制文件都可以使用到。但是在电脑中使用U盘复制5G文件提示“复制文件过大无法复制”怎么回事呢&#xff1f;难道是U盘坏了吗?其实不是的&#xff0c;针对此故障问题&#xff0c;下面教程和大家分享电脑使用…

c语言中的英语缩写,英文短信缩写:超实用总结(C开头)

C C4N – Ciao for now 拜拜(Ciao是意大利语的再见) CAM – Camera 相机 CB – Coffee break 休息时间 CM – Call me 打给我 CMB – Call me back 给我回个电话 CMIIW – Correct me if Im wrong 错了就纠正我 CMON – Come on 快点&#xff01;拜托&#xff01; COB – Close…

计算机辅助设计的缩写6,6计算机辅助设计的英文缩写是.doc

6.计算机辅助设计的英文缩写是 ( ) A. CAM B.CAI C.CAD D.CAT 7.Windows操作系统属于 ( ) A.单用户单任务操作系统 B.多用户多任务操作系统 C.单用户多任务操作系统 D.多用户单任务操作系统 8.在Windows中,鼠标是重要的输入工具,而键盘 ( ) A.根本不起作用 B.能…

工作、求职需要记住的英文缩写,offer讨论避免尴尬

求职、工作过程中可能遇到一些英文缩写。千万不要懵逼&#xff0c;懵逼容易成土鳖哈哈哈&#xff1a; ●HC 指的就是 Head Count&#xff0c;俗称人头数&#xff0c;这里指的是招聘名额。 例子&#xff1a;我们公司HC充足&#xff0c;欢迎报考&#xff01; ●BP(Business Partn…

常见外贸英文缩写(下)

从事外贸行业给国外客户打电话用哪种方式最好&#xff0c;很多人会说用Skype、WhatsApp、IntBell、RingCentral等等。打住&#xff01;我们今天不是来讨论哪个App比较好用&#xff0c;也不是来讨论你在用哪个App的&#xff01;今天给大家汇总常见英文外贸缩写&#xff0c;让你无…

三级网络英文缩写

LAN 局域网 WAN 广域网 MAN 城域bai网 UTP 非屏蔽du的双绞线 STP 屏蔽的双绞线 ATM 异步传输模式zhi FDDI 光纤分布式数据接口 CSMA/CD 载波侦听多dao路控制访问方法 MSAU 多站访问单元 ATM 异部传输模式 Hub 集线器 PSTN 公共交换电话网 ISDN 综合业务数字网 ADSL 非对称数字用…

计算机网络名词缩写,计算机网络名词 英文缩写解释大全

可作参考 计算机网络名词 英文缩写解释大全 计算机网络名词 英文缩写解释大全 AAL ATM适配层 ATM Adaptation Layer ABR 可用比特率 Available Bit Rate ACR 衰减串扰比 ADPCM 自适应差分PCM ADSL 非对称数字环路 Asymmetric Digital Subscriber Line AMI ATM Management Inter…