C/C++ 语言获取文件大小
在C语言中测试文件的大小,主要使用二个标准函数。
1.fseek
函数原型:int fseek ( FILE * stream, long int offset, int origin );
参数说明:stream,文件流指针;offest,偏移量;orgin,原(始位置。其中orgin的可选值有SEEK_SET(文件开始)、SEEK_CUR(文件指针当前位置)、SEEK_END(文件结尾)。
函数说明:对于二进制模式打开的流,新的流位置是origin + offset。
2.ftell
函数原型:long int ftell ( FILE * stream );
函数说明:返回流的位置。对于二进制流返回值为距离文件开始位置的字节数。
获取文件大小C程序(file.cpp):
1 #include <stdio.h> 2 3 int main () 4 { 5 FILE * pFile; 6 long size; 7 8 pFile = fopen ("file.cpp","rb"); 9 if (pFile==NULL) 10 perror ("Error opening file"); 11 else 12 { 13 fseek (pFile, 0, SEEK_END); ///将文件指针移动文件结尾 14 size=ftell (pFile); ///求出当前文件指针距离文件开始的字节数 15 fclose (pFile); 16 printf ("Size of file.cpp: %ld bytes.\n",size); 17 } 18 return 0; 19 }
C/C++ 语言获取文件大小相关推荐
- c语言如何在读文件前判断文件大小,c语言获取文件大小,判断文件是否存在
#import // 判断文件是否存在 bool file_exists(const char *filename){ return access(filename, 0) == 0; } //获取文 ...
- c语言删除文件中的结构体_C语言插入、删除、更改文件内容
我们平时所见的文件,例如 txt.doc.mp4 等,文件内容是按照从头到尾的顺序依次存储在磁盘上的,就像排起一条长长的队伍,称为顺序文件. 除了顺序文件,还有索引文件.散列文件等,一般用于特殊领域, ...
- C++实现Base64编解码并应用于图片传输
前言 最近接触的项目有一个小功能是在服务器(C++)和客户端(Python)之间传输图片,开始这部分是由另外一位同学完成的.但由于服务器是用C++写的,他不是很熟悉,所以让我来完成这部分功能.在项目中 ...
- c语言prime函数怎么用_C语言教程_v20201106
编程基础 1.1 通俗地理解什么是编程语言 1.2 C语言究竟是一门怎样的语言? 1.6 初中毕业能学会编程吗? 1.7 C和C++到底有什么关系? 1.8 学了 C 语 ...
- 第十一章 文件操作_C语言插入、删除、更改文件内容
我们平时所见的文件,例如 txt.doc.mp4 等,文件内容是按照从头到尾的顺序依次存储在磁盘上的,就像排起一条长长的队伍,称为顺序文件. 除了顺序文件,还有索引文件.散列文件等,一般用于特殊领域, ...
- C语言学习笔记-入门整合篇(十万字长文)
(该篇学习内容全部来自于C语言中文网, 本篇内容仅仅是简易学习笔记 , 以自己的理解+网站部分描述结合+个人补充,并不适合编程初学者观看!!! 需要有一定的编程基础) 数据在内存中存储 内存条包含了上 ...
- 从C语言来理解文件系统
文章目录 一.文件.文件系统 二.C语言文件操作详解 C语言中的文件是什么? 文件流 C语言fopen函数的用法,C语言打开文件详解 fopen() 函数的返回值 判断文件是否打开成功 fopen() ...
- C语言字符串、文件操作常用操作函数,
C语言字符串常用操作函数 C语言字符串.文件操作常用操作函数 字符串输出 - puts() 字符串输入 - gets() 字符串比较 - strcmp() 字符串复制 - strcpy() 字符串连接 ...
- netcore 图片 文件大小_NetCore 3.0文件上传和大文件上传的限制详解
NetCore文件上传两种方式 NetCore官方给出的两种文件上传方式分别为"缓冲"."流式".我简单的说说两种的区别, 1.缓冲:通过模型绑定先把整个文件保 ...
最新文章
- python figure函数 gui_python 在一个GUI内创建了2个figure,为什么只能显示第二个图?...
- 数据库设计器无法打开方法
- python函数参数学习_python函数学习1
- 如何C#中实现在TreeView查找某一节点
- idea中怎么新建vue项目_项目中使用vue-awesome-swiper
- 浅谈http协议六种请求方法,get、head、put、delete、post、options区别
- Premiere CC2019软件下载和安装教程
- SplitContainer控件设置固定比例
- thinkphp 实现新订单语音提醒功能
- 软件测试的职责描述,软件测试工程师的责任是什么?
- loadlibrary failed with error 126:找不到指定模块 解决方法
- 微信视频号封面怎么设置?怎么改?封面制作全教程,快来解锁!
- ics-07—CTF
- 2020第八届“泰迪杯”特等奖(基于 BERT 深度语言模型的“智慧政务”文本挖掘应用)
- arcgis显示后台错误_ArcGIS后台服务器抛出异常的解决方法
- mysql查询发生变化的股价_最近半年股价涨跌统计
- 腾讯天美游戏客户端 一面凉经
- DWL-2100AP 默认登录帐号密码
- 机器学习 matlab工具箱,[matlab]机器学习及SVM工具箱学习笔记
- 查看ubuntu服务器的配置(cpu+显卡+内存+硬盘)
热门文章
- SSH pager-taglib分页的实现
- XamarinAndroid组件教程设置自定义子元素动画(一)
- ArduinoYun教程之Arduino环境与Linux环境的桥梁Bridge
- Beaglebone Black的启动
- 获得分辨率_直播教程 | 直播画质认知及如何获得最优画质
- no python application found_用Nginx部署Django服务no python application found
- python 如何判断一个函数执行完成_Python核心编程的四大神兽迭代器、生成器 、闭包以及装饰器...
- mysql -d_mysqld
- MIT的这个AI,专治抗生素滥用,二次抗生素直降67%
- 李开复Bengio大咖对话:下一阶段AI最大机遇在这4个领域