最近在获取文件大小上遇到了问题,因为这到处找问题,最后才发现原来是在获取文件大小的时候出现了问题。言归正传:

以前获取文件大小的时候是这么做的:

fseek(fp,0,SEEK_END);

_length=ftell(fp);

fseek( fp, 0, SEEK_SET);

这个样子正常情况下是没问题的,但是在读取大于3、4G的时候就出现读错的情况,要么是-1,要么是_length数据类型的最大值,总之都是不对的。

解决办法是:

fpos_t pos;
   fseek(fp,0,SEEK_END);
   fgetpos(fp,&pos);
    fseek( fp, 0, SEEK_SET);

pos即为文件的大小了,特地查了一下fpos_t,这个数据类型是定义在stdio.h文件里面的

typedef __int64 fpos_t;

可以了,就是这么个意思,这个样子就不用另外加什么库,或者有些说的用什么api或是windows就可以解决了!

FROM: http://blog.csdn.net/shimeizhao123/article/details/14181885

fseek获取大于4G的文件大小的问题相关推荐

  1. Systemback更改默认存储目录/home,并在Ubuntu18创建大于4G的Linux镜像教程

    文章目录 前言 一.Ubuntu18系统安装Systemback 1. 移除先前建立的仓库连接(如果有建立的话) 2. 通过密钥建立连接 3. 添加目标软件仓库 4. 更新系统软件仓库 5. 安装 s ...

  2. git2.29.2.2怎么安装_制作Win10安装U盘时install.wim大于4G怎么办?

    MS酋长之前已经分享过"最简单的Win10系统安装U盘制作方法",只需要把Win10 ISO镜像的所有文件和文件夹都复制到U盘根目录下即可.因为考虑到兼容性,所以建议U盘格式化为F ...

  3. linux镜像文件不要大于4g,Systemback制作大于4G的Ubuntu系统镜像

    1 安装Systemback 依此执行如下命令. sudo apt-get update sudo add-apt-repository ppa:nemh/systemback sudo apt-ge ...

  4. 如何让U盘支持大于4G的文件

    U盘通常是FAT(*)格式,不能支持大于4G的文件.为了实现这个目的,通常可以把U盘格式化成NTFS或者exFAT,这两种文件系统都支持大于4G的文件. 一.格式化成NTFS 第一步 首先我们把优盘插 ...

  5. 7-zip来解压大于4G以上打包文件

    2019独角兽企业重金招聘Python工程师标准>>> 今天碰到一个问题就是一个文件大于4G的zip,想了很久后来还是采用这个开源软件7-zip 1.下载和安装7zip(http:/ ...

  6. linux镜像文件不要大于4g,Systemback制做大于4G的Ubuntu系统镜像

    1 安装Systemback 依此执行以下命令. sudo apt-get update sudo add-apt-repository ppa:nemh/systemback sudo apt-ge ...

  7. 超过4g的文件怎么上传到linux,怎么免费上传大于4G的文件到百度云 大于4G的文件不开会员怎么上传到百度云...

    4G管家appv1.0 安卓版 类型:系统工具大小:13.1M语言:中文 评分:10.0 标签: 立即下载 百度云可以非常方便大家存储一些大文件资料,而且百度云的容量也非常高,不过如果你是普通用户的话 ...

  8. 解压大于4g的文件_U盘容量还很大,拷贝时提示“文件太大”无法传输!

    软件下载链接: https://pan.baidu.com/s/1PQdXyH4SG88Pb-1c_A7ATQ 提取码:1dg7 链接失效加QQ号:352062239或者文末留言处查看最新链接 安装过 ...

  9. 从linux使用sz命令下载大于4g的文件到windows

    拆分文件: cat tomcat7.zip | split -b 2G - tomcat7.zip. 命令解释: tomcat7.zip    是待下载的大于4g文件 拆分成2G的小文件 tomcat ...

最新文章

  1. Silverlight 项目开发准则参考
  2. 【PAT笔记】PAT中的散列思想
  3. The requested URL was not found on the server
  4. 《城邦暴力团》:一部奇书、反书、隐书
  5. mybatis学习(37):动态sql-trim
  6. 火绒规则 禁止所有软件的安装_十大机械设计软件对比,附所有软件安装资料...
  7. 吕氏春秋 —— 不韦迁蜀 世传吕览
  8. 前端web:响应式网站开发的现状你了解吗?
  9. 7-3 奇偶分家 (10 分)
  10. jquery实现点击元素,如果弹出层隐藏则显示,显示则隐藏
  11. 数学建模--层次分析法
  12. 利用GPU实现大规模动画角色的渲染
  13. 台式电脑怎么组装步骤_台式电脑组装教程图解,手把手教您组装(零基础也能搞定)...
  14. 元胞自动机:森林火灾模拟(Python:numpy、seaborn)
  15. 互联网老辛整理-学员面试题
  16. Python 数据分析 git 工具使用 flask学习
  17. 华为设备如何查看风扇的序列号?
  18. html实现数据的增删查改
  19. linux嵌入式红绿灯,嵌入式上机课设(红绿灯)..doc
  20. Cadence 中贴片元件焊盘的制作

热门文章

  1. Linux中如何将文件dump成16进制值
  2. C++中sizeof问题
  3. TCP第四次挥手为什么要等待2MSL(最长报文段寿命,Maximum Segment Lifetime)
  4. 错误: 找不到android.support.v7.app.AppCompatActivity的类文件
  5. Grafana 6.1.3 发布,系统指标监控与分析平台
  6. PBRT笔记(2)——BVH
  7. Redis数据结构之字符串
  8. POJ1990:MooFest——题解
  9. POJ 2749 Building roads
  10. 求解第K个斐波那契质数