×

c输出文件大小

c输出文件大小(c 文件输出)

admin admin 发表于2023-04-05 12:33:15 浏览61 评论0

抢沙发发表评论

本文目录一览:

C语言获取txt文件大小两种方法的差异

我测试了你的代码:

#includestdio.h

#includestring.h

#includestdlib.h

void main()

{

FILE *p=fopen("d:\\jiuibf.txt","rt");

int length = 0;

for(;fgetc(p)!=EOF;length++);

fclose(p);

printf("第一种方式,文件长度=%d\n",length);

p=fopen("d:\\jiuibf.txt","rb");

fseek(p,0,2);

length=ftell(p);

fclose(p);

printf("第二种方式,文件长度=%d\n",length);

}

文本文件的内容是:

FILE *p=("jiuibf.txt","rt");

int length;

for(;fgetc(p)!=EOF;length);

FILE *p=(jiuibf.txt","rb");

int length;

fseek(p,0,2);

length=ftell(p);

程序的输出是:

原因分析:

在windows下,以文本方式写入文件的\n会被转换为\r\n(也就是0x0D0A),输出的时候,\r\n会被转换回\n。

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语言获取文件的大小

两种方法:

1、用stat()函数来获取

int main(){ struct stat st ; stat( "file.txt", st ); printf(" file size = %d\n", st.st_size); return 0;}2、用ftell()函数来获取-c输出文件大小

int main(){ FILE *fp; fp=fopen( "file.txt", "r"); fseek(fp, 0L, SEEK_END ); printf(" file size = %d\n", ftell(fp) ); return 0;}-c输出文件大小

用C的什么函数可以得到一个文件的具体大小

可以自己写一个

#include stdio.h

int GetFileSize(FILE*fp)

{

    int np=ftell(fp);        //得到当前文件指针位置

    fseek(fp,0,SEEK_END);    //文件指针移动到末尾

    int Len=ftell(fp);        //得到文件指针的位置 即文件大小

    fseek(fp,np,SEEK_SET);    //再把文件指针移回来

    return Len;

}

c语言如何计算文件大小?

#includestdio.h

#includestdlib.h

void main()

{

FILE*fp;

int a;

if((fp=fopen("1.txt","rb"))==NULL)

{

printf("此文件无法打开");

exit(0);

}

fseek(fp,0,2);

a=ftell(fp);

printf("%d\n",a);

fclose(fp);

}

望采纳!

在linux系统中,用c函数能否控制输出文件的大小,如果超过规定的大小则把文件的前面的部分丢掉

可以申请一段内存空间,这段内存空间是一段循环队列,大小10M,最后把这段空间内容写入文件。

c语言如何通过文件属性获取文件大小

c语言可以通过stat()函数获得文件属性,通过返回的文件属性,从中获取文件大小。

#include

sys/stat.h

可见以下结构体和函数

struct

stat

{

_dev_t

st_dev;

_ino_t

st_ino;

unsigned

short

st_mode;

short

st_nlink;

short

st_uid;

short

st_gid;

_dev_t

st_rdev;

_off_t

st_size;

//文件大小

time_t

st_atime;

time_t

st_mtime;

time_t

st_ctime;

};

stat(const

char

*,

struct

_stat

*);

//根据文件名得到文件属性

参考代码:

#include sys/stat.h

void main( )

{

struct stat buf ;

if ( stat( "test.txt", buf ) 0 )

{

perror( "stat" );

return ;

}

printf("file size:%d\n", buf.st_size );

}