更多课程 选择中心

C/C++培训
达内IT学院

400-996-5531

c语言进度式文件拷贝代码教程

  • 发布:C++培训
  • 来源:资料库
  • 时间:2020-08-28 14:45

今天为大家带来的项目是一个新增文件复制的功能,大家都知道要有好的用户体验,做出来的东西才会被接受,所以为大家带来c语言进度式文件拷贝代码教程代码如下仅供大家交流与参考:

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

#include <conio.h>

#include <Windows.h>

#pragma warning(disable:4996)

int main()

{

//变量

FILE *pfin = NULL; //待读取的文件

FILE *pfout = NULL; //待写入的文件

int i;

int readSize = 0; //每次读取的字节数

int curSize = 0; // 当前已经读取的字节数

int totalSize = 0; //文件的总的字节数

int blockSize = 0; //每块的字节数

char buf[101];

srand((unsigned int)time(0)); //初始化随机种子, 伪随机数

pfin = fopen("20160725.c", "rb"); //以二进制的方式打开该文件作为读取对象

pfout = fopen("Copy.c", "wb"); //以二进制的方式打开该文件作为写入的对象

if (!pfin || !pfout)

{

printf("打开或创建拷贝的文件失败!\n");

return -1;

}

//获取待读取的文件的总的字节数

fseek(pfin, 0, SEEK_END); //把文件指针指向文件末尾

totalSize = ftell(pfin);

blockSize = totalSize / 10;

fseek(pfin, 0, SEEK_SET);//把文件指针重新指向开头

printf("按任意键开始文件的拷贝\n");

getch();

while (1)

{

readSize = fread(buf, 1, rand() % 100 + 1, pfin);

fwrite(buf, 1, readSize, pfout);

curSize += readSize;

if (feof(pfin))

break;

printf("\r 正在拷贝:");

for (i = 0; i < curSize; i += blockSize)

printf("< ");

Sleep(300);

}

if (curSize == totalSize)

printf("\n拷贝完成.\n");

fclose(pfin);

fclose(pfout);

printf("\n\n打印拷贝文件当中的内容:\n");

pfin = fopen("Copy.c", "r");

while (1)

{

putc(fgetc(pfin), stdout);

if (feof(pfin))

break;

}

printf("\n打印完毕!\n");

fclose(pfin);

return 0;

}

当你还在担心能否就业时,达内学员提前被企业录取;当你转辗于各大招聘会时,达内学员收到了高薪offer;当你在各大招聘网站投递简历时,达内学员中有人一毕业进入五百强名企。所以选择很重要。找C++培训班,选达内就对了。

文章来源:C语言编程,版权声明:转载文章来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:C++中冒泡排序和选择排序你了解多少?
下一篇:C语言编程时常犯的10种错误

超全的C语言标识符知识

C指针——指针类型转换

C指针——指针和结构类型的关系

C指针——数组和指针的关系

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省