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):
#include <stdio.h>
int main ()
{
FILE * pFile;
long size;
pFile = fopen ("file.cpp","rb");
if (pFile==NULL)
perror ("Error opening file");
else
{
fseek (pFile, 0, SEEK_END); ///将文件指针移动文件结尾
size=ftell (pFile); ///求出当前文件指针距离文件开始的字节数
fclose (pFile);
printf ("Size of file.cpp: %ld bytes.\n",size);
}
return 0;
}
相关推荐
-
C语言文件操作函数大全(超详细)
fopen(打开文件)相关函数 open,fclose表头文件 #include<stdio.h>定义函数 FILE * fopen(const char * path,const char * mode);函数说明 参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态.mode有下列几种形态字符串:r 打开只读文件,该文件必须存在.r+ 打开可读写的文件,该文件必须存在.w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失.若文件不存在则建立该文件.w
-
c语言读取csv文件和c++读取csv文件示例分享
C读取csv文件 复制代码 代码如下: #include <stdio.h>#include <string.h> char *trim(char *str){ char *p = str; while (*p == ' ' || *p == '\t' || *p == '\r' || *p == '\n') p ++; str = p; p = str + strlen(str) - 1; while (*p == ' ' ||
-
C语言文件操作函数freopen详细解析
今天做USACO 用到了文件的操作. 之前做USACO只是格式化的些 写 freopen("xxx.in","r",stdin) 和"freopen("xxx.out","w",stdout)" 百度百科上是这么介绍的: 函数名: freopen 功 能: 替换一个流,或者说重新分配文件指针,实现重定向.如果stream流已经打开,则先关闭该流.如果该流已经定向,则freopen将会清除该定向.此函数
-
php读取二进制流(C语言结构体struct数据文件)的深入解析
尽管php是用C语言开发的,不过令我不解的是php没有提供对结构体struct的直接支持.不过php提供了pack和unpack函数,用来进行二进制数据(binary data)和php内部数据的互转: 复制代码 代码如下: string pack ( string $format [, mixed $args [, mixed $...]] ) //Pack given arguments into binary string according to format. array unp
-
C语言采用文本方式和二进制方式打开文件的区别分析
稍微了解C程序设计的人都知道,文本文件和二进制文件在计算机上面都是以0,1存储的,那么两者怎么还存在差别呢?对于编程人员来说,文本文件和二进制文件就是一个声明,指明了你应该以什么方式(文本方式/二进制)打开这个文件,用什么函数读写这个文件(读写函数),怎么判断读到这个文件结尾等. 具体分析如下: 一.以哪种方式打开一个文件: ANSI C规定了标准输入输出函数库,用 fopen()函数打开文件.fopen()函数的调用方式一般为: FILE *fp; fp=fopen(文件名,使用文件方式):
-
c语言全盘搜索指定文件的实例代码
复制代码 代码如下: #include<stdio.h>#include<windows.h> void FindFile(char* ,char* );int count=0;//统计文件数char fname[32];#define BUFSIZE 256int main(int argc,char* argv[]){ char szLogicalDriveStrings[BUFSIZE]; DWORD iLength; int iSub; pr
-
C语言实现修改文本文件中特定行的实现代码
好的,首先我先叙述下功能要求:其实很简单,就是Shell中sed命令的C语言实现,实现定位到所需要的字段的那一行,之后修改成需要的内容.但是由于C语言是面向过程的语言,需要顺序执行的特点,所以,实现中遇到了很多麻烦,在这里博主将实现的过程描述如下,以便大家参考. 问题描述: 文本内容: 复制代码 代码如下: wireless.1.authmode=1wireless.1.compression=0wireless.1.current_ap=ssid12wireless.1.current_sta
-
深入C语言把文件读入字符串以及将字符串写入文件的解决方法
1.纯C实现 复制代码 代码如下: FILE *fp; if ((fp = fopen("example.txt", "rb")) == NULL) { exit(0); } fseek(fp, 0, SEEK_END); int fileLen = ftell(fp); char *tmp = (char *) malloc(sizeof(char) * fileLen); fseek(fp, 0, SEEK_SET); fread(tmp, fileLen,
-
利用C语言替换文件中某一行的方法
文件中存贮的内容如下所示: 11 1122 0 1122 * * 0 0 22 222 0 222 * * 0 0 33 333 0 333 * * 0 0 通过使用下面的几个函数,fopen,fprintf,fscanf,fseek,ftell . 具体的函数函数原型如下所示: FILE*fopen(const char*filename,const char *mode); int fprintf(FILE*stream,const char *format,...) int fscanf(
-
c语言打开文件函数使用方法
ANSI C规定文件打开用函数fopen,关闭为fclose. 1.调用方式通常为: 复制代码 代码如下: FILE *fp;fp=fopen(文件名, 打开方式); 2.参数说明: 文件名: 形如"myfile.dat"."F:\data\myfile.dat"等等; 打开方式:"r"(只读) 为输入打开一个文本文件"w"(只写) 为输出打开一个文本文件"a"(追加) 向文件文件尾添加数据"rb
随机推荐
- iOS 进度条、加载、安装动画的简单实现
- flex调用webservice中的自定义类的方法
- 前端常见跨域解决方案(全)
- jQuery弹出遮罩层效果完整示例
- smarty中js的调用方法示例
- php去除html标记的原生函数详解
- Apache启动报错No space left on device: AH00023该怎么解决
- php中static 静态变量和普通变量的区别
- 举例讲解Python设计模式编程中的访问者与观察者模式
- Javascript 基础---Ajax入门必看
- PHP实现定时执行任务的方法
- 使用cgroups来限制MySQL企业备份服务对资源的占用
- Javascript jquery css 写的简单进度条控件
- 使用react-router4.0实现重定向和404功能的方法
- Bootstrap 3浏览器兼容性问题及解决方案
- 成功的背后!(给所有IT人)第1/3页
- Vue组件化开发思考
- vue实现提示保存后退出的方法
- 使用vue2.0创建的项目的步骤方法
- Python实现的tcp端口检测操作示例