当前位置:  技术问答>linux和unix

linux下如何取得大文件的大小

    来源: 互联网  发布时间:2016-12-07

    本文导语:  我现在在linux下要取得文件大小操作,文件一般有3-6G大小,我使用 off_t getFileSize(const char *pathname) {      struct stat stat_buf;      stat(pathname, &stat_buf);      return stat_buf.st_size; } 要取得文件大小时出错: stat er...

我现在在linux下要取得文件大小操作,文件一般有3-6G大小,我使用
off_t getFileSize(const char *pathname)
{
     struct stat stat_buf;
     stat(pathname, &stat_buf);
     return stat_buf.st_size;
}
要取得文件大小时出错:
stat error: Value too large for defined data type

我编译和运行的环境是
Linux KD1 2.6.18-128.4.1.el5xen #1 SMP Tue Aug 4 21:33:24 EDT 2009 i686 i686 i386 GNU/Linux
我分析是因为我使用的32位系统只能读出最大4G的文件,而struct stat 结构中off_t 在系统中又是定义为有符号的long型,所以只能得到小于2G文件的大小。

请问有没有别的方法可以取得这种大文件的大小?

|
加入

#define _FILE_OFFSET_BITS 64 

或者编译时加入-D_FILE_OFFSET_BITS=64
试试

如果还不行,怀疑和时间戳有关。

|
试试stat64()

    
 
 

您可能感兴趣的文章:

  • 在Linux中,IP怎样取得?
  • 请问linux系统下,用什么函数可以取得hostname和username?
  • UNIX/LINUX下如何取得精确到“毫秒级”的系统时间?
  • linux图形环境下有什么api函数可以设置或者取得剪贴板的内容
  • 请问在C++/C中怎么取得LINUX当前的环境变量
  • linux取得进程数目
  • 急,在线等待!!!请教个问题,linux下的远程控制软件是什么,可以在那里取得,多谢?
  • 在LINUX中使用C调用系统命令,怎么取得系统命令的输出?
  • 【● LINUX下有没有消息或事件驱动?如何取得呢?谢谢各位兄弟!
  • 怎么在linux下用java取得它的版本号:version
  • linux的引导印象文件怎么取得(我想在nt下引导linux)
  • 小问题:如何在linux下,取得OS名和版本。shell指令
  • 如何在Linux下实现取得虚拟内存的使用率?
  • linux下有Win32下的FILETIME这个结构吗?怎样取得或转换出这样的时间格式?
  • linux下C编程,如何取得当前行的行号信息?
  • linux 如何取得磁盘信息?
  • 我正在做一个Linux下基于ncurses库的文本编辑器,想知道如何取得Ctrl键,请高手指点,谢谢!
  • 请问linux下什么函数能取得系统当前时间(最好精确到微妙,实在不行毫秒也行)?
  • 请问:在Linux的C编程中,如何取得模块路径?
  • 怎么样用程序取得Linux系统的CPU利用率和内存的使用情况呀?
  • linux c/c++ IP字符串转换成可比较大小的数字
  • windows 2000 访问linux下smaba时候 2G以上大小的文件显示出来的大小很奇怪
  • 根据文件大小查找文件的find命令举例(Linux,centos,redhat)
  • 在linux里进行磁阵划分(连接了实际的外界磁盘阵列)时,划分出来的实际大小和配置大小不同
  • linux内存管理中段的大小是固定值(或者有个最大值),还是随机根据运行程序需要设定段的大小
  • 关于LINUX下的大小写问题.着急
  • 求教:在Linux下的C语言中如何获取分区的剩余大小和文件的大小
  • 为什么linux不同的发行版本的大小有这么大的差别?
  • 修改LINUX内核让系统不区分大小写!
  • 请教,如何修改在虚拟机vmware中安装的linux的ramdisk大小?
  • linux c 如何创建固定大小的文件?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux_centos_redhat下tar命令解压tgz文件方法
  • 用java读中文linux中的文件是正确的,用java读英文linux版本中的文件是乱码,如何使英文linux读出的文件数据也是中文的?
  • linux下nm命令(显示可执行文件的符号信息)介绍以及常见nm命令用法举例
  • Linux查找包含指定文字的文件(linux查找指定文件)
  • Linux下c函数dlopen实现加载动态库so文件代码举例
  • 请问LINUX内核下,哪些文件夹下的文件是跟LINUX的硬件平台无关的?
  • mount命令(linux操作系统)挂载卸载文件系统(cifs,光驱,nfs等)方法介绍
  • 请问各位linux开发大虾,linux下有类似VC中depends的工具可以查看文件调用了哪些so文件吗?
  • linux内存文件系统ramfs实现原理
  • 急::在Linux下怎么根据另一台windows或linux的文件名,去得到这个文件
  • linux/Centos/ubuntu下如何使用umask命令修改新建文件时的默认权限
  • 我的机器装了WINDOWS2000 和 LINUX 7.3 , 请问在LINUX 中如何访问`WIN2K中的文件?同样在WIN2K中如何访问LINUX 中的文件?
  • Linux内存文件系统(ramdisk)的三种实现方式
  • 请问如何在WINDOWS中访问linux下的文件,并把Windows下的文件复制到linux下的分区中
  • Linux下glibc库文件锁:协同锁(advisory lock)和强制锁(mandatory lock)
  • linux下copy文件通常又些文件名的大小写会发生变化的,而linux又对大小写敏感,如何解决这一问题
  • Linux下u盘文件系统相关操作
  • Linux下c函数dlopen实现加载动态库so文件代码举例 iis7站长之家
  • linux下find查找文件命令详细介绍及find文件用法举例说明
  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • Linux系统命令:find(文件查找命令)介绍及用法示例
  • linux中对文件排序的命令(文件夹中包含子文件)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • secureCRT下Linux终端汉字乱码解决方法
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • Linux c字符串中不可打印字符转换成16进制
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3