用C语言怎样测试一个文本文件的大小

怎样用C程序测试一个文本文件的大小

第1个回答  2010-06-23
#include <io.h>
#include <stdio.h>

int main(void)
{
FILE * f = 0; int fn = 0, sz = 0;
f = fopen("c:\\abc.txt", "rb");
if(!f) {
fprintf(stderr, "File Not Found.\n");
return 0;
}/*end if*/
fn = _fileno(f); /*取得文件指针的底层流式文件号*/
sz = _filelength(fn);/*根据文件号取得文件大小*/
printf("文件abc.txt大小为:%d字节.\n", sz);
fclose(f);
return 0;
}/*end main*/

备注:上述程序适用于任何一种文件,都可以直接求出大小。本回答被网友采纳

如何用C语言获取文件的大小
一、获取文件系统属性,读取文件大小。在C语言库函数中有stat函数,可以获取文件的基本信息,其中就有文件大小。include <sys\/stat.h>\/\/包含头文件。int file_size(char* filename)\/\/获取文件名为filename的文件大小。{ struct stat statbuf; int ret; ret = stat(filename,&statbuf);\/...

C语言获取文件大小&读&写文件代码
本文提供了一套C语言代码,以实现文件大小获取、读取以及写入功能。代码通过三个文件实现,包括头文件“fGetFileInfo.h”,实现相关函数定义;源文件“fGetFileInfo.c”,实现函数逻辑;以及用于测试的“main.c”。具体而言,使用“fGetFileInfo.h”文件中的函数可以获取文件的大小,实现简单高效。在“f...

C语言获取txt文件大小两种方法的差异
fgetc在读入时会将\\r\\n转换成一个\\n;上面的文本文件有6个回车换行。所以第一种方式比第二种方式少6 C语言获得文件的长度方式就是第二种:FILE*fp;fp=fopen("localfile","rb");\/\/ localfile文件名fseek(fp,0,SEEK_SET);fseek(fp,0,SEEK_END);long longBytes=ftell(fp);\/\/ longBytes就...

C语言 文件定位
if(!fp)\/\/检查文件打开是否正常 { printf("文件打开失败,程序退出!\\n");exit(1);} fseek(fp,0L,SEEK_END);\/\/文件定位到文件末尾 len=ftell(fp);\/\/获取文件长度 if(len\/1024>0)printf("文件大小为%ldKB!\\n",len\/1024);else printf("文件大小为%ldB!\\n",len);rewind(fp);\/\/文件指...

怎么用c语言生成一个特定大小的文本文件
);else { fseek(fp, nFileLength-1, SEEK_SET); \/\/ 将文件的指针 移至 指定大小的位置 fputc(32, fp); \/\/ 在要指定大小文件的末尾随便放一个数据 fclose(fp);} } void main(){ CreateMyFile("test.txt",1024*256); \/\/调用测试 } ...

C语言中,如何比较汉字的大小,就是在一个范围内,输出特定的内容,
ascii码的大小噻。

C语言中一个字节几个位?
  这个要看字符数是什么数据类型,可以用sizeof(类型)操作符来测试字节数。1、英文字母:如果是char 型,那么是占用1个字节,8位。如果是string型,应该是两个字节,16位,因为末尾还有个\\0字符。比如:char c = 'a';\/\/它占用一个字符char c[] = "a";\/\/占用两个。

c语言 计算字符串长度
C语言的字符串是由字符数组形式保存的,并约定'\\0'(ascii码值为0)作为字符串结束符。其长度为从字符串开始,到'\\0'结束,所有字符的个数,不包括'\\0'本身。要获得字符串长度,有两种方法可以使用,使用库函数strlen()。strlen声明在string.h中,原型为int strlen(char *str);功能为求str的长度...

用C语言读出文件行数
int hs=hangshu("c:\\\\1.txt");\/\/这里说明你要打开的文件。这个是c盘根目录下文件 int hst=hangshu("1.txt");\/\/工程目录下的文件。printf("行数:%d\\n",hs);printf("行数:%d\\n",hs);} 如上是用c编写的,不是c++.运行的时候可以把中文注释去掉。完全可以运行的,我已经测试过了。

tc中c语言中如何读取文本文件的数字一个一个的赋值给2维数组如图将下面...
int arr[M][N];int i,j;FILE *fp ;char buf[N+1]={0};fp=fopen("test.txt","r");i=0;while(fgets(buf,9,fp)){ if(strlen(buf)==1) continue;\/\/fgets函数有时候换行符也是单独一行 for(j=0;j<strlen(buf);j++){ arr[i][j]=buf[j]-'0';} i++;} for(i=0;i<M;...

相似回答