c语言读取文件内容到字节数组,C语言新案例-读取文件进度条

原标题:C语言新案例-读取文件进度条

01

C语言新案例-读取文件进度条

//今晚内容:C语言精简案例-读取文件进度条

#include

#include

#include

#include

int main()

{

int size = 0; //文件的总大小

char tmp[100]; //临时数组,保存当前读取的内容

int len = 0; //当前读取数

int sum = 0; //已读取的大小

char content[3068] = {0};//保存文件内容

int progress = 20; //进度条的长度设置为20

int current = 0;//当前进度

int i; //循环变量

//1.打开文件及关闭文件

FILE* pf = NULL; //文件指针

pf = fopen("8_22.c","rb");//以读的方式打开文件

if(pf==NULL)//判断文件是否打开正常

{

printf("文件打开失败,程序退出!n");

return -1;//返回-1是表示出错的意思

}

//2.获取文件总大小,及把文件指针设置到文件起始处

fseek(pf,0,SEEK_END);//把文件指针放到文件末尾位置

size = ftell(pf); //得到文件大小,以字节为单位

fseek(pf,0,SEEK_SET);//文件指针设置到文件起始处

srand((unsigned)time(NULL));//随机种子

while(!feof(pf))//非文件结尾,循环读取文件内容并显示进度

{

len = fread(tmp,1,rand() % 100,pf);//读取随机数量的内容,保存在tmp数组中

tmp[len] = '0'; //添加字符串的结束标记

sum += len; //累加总读取数 sum = sum + len;

strcat(content,tmp);//将tmp数组中的内容附加到content数组中

//进度条

current = sum/(size/progress);//计算当前进度

printf("r");//让光标移动到行首

for(i=0;i

{

if(i

printf("■");

else

printf("□");

}

printf("[%6.2f%%]",(float)sum / size*100);

Sleep(300);

}

//显示文件内容

//printf("n%sn", content);

fclose(pf);//关闭文件

return 0;

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值