如何实现C语言中复制文件的程序

如何实现C语言中复制文件的程序,第1张

1 以只读方式打开第一个文件

2 以写方式打开第二个文件

3 循环读取字符,并写入第二个文件。直到遇到EOF结束。

4 关闭文件。

代码:

#include <stdio.h>

int main()

{

    FILE *f1, *f2

    int c

    f1 = fopen("in.txt", "rb")

    f2 = fopen("out.txt", "wb")//将in.txt复制为out.txt

    while((c = fgetc(f1)) != EOF)

        fputc(c,f2)

    fcloseall()

    

    return 0    

}

有两种方式可以实现复制:

一、自行编写函数,实现复制。

算法流程如下:

1

以读的方式打开源文件,以写的方式打开目标文件;

2

每次读一个字节,并写到目标文件中,直到达到文件结尾为止;

3

关闭两个文件。

二、调用系统命令

stdlib.h中的system函数,可以执行系统命令行支持的命令。

int

system(char

*cmd)

调用时就是执行cmd中的指令。

1

对于windows,就是执行dos命令,可以调用

system("copy

/Y

src_file

target_dir")

其中src_file为源文件,而target_dir就是目标文件夹。

2

对于Linux,需要执行shell命令cp,如下

system("cp

src_file

target_dir")

rb方式

打开

是用

2

进制方法打开,只读文件。不能写。如果是

rb+

就可以读写。

如果要把这个文件的内容复制到另一个文件,打开它,读入。

在写另一个文件,在执行写语句以前打开文件就可以,不一定一开始就打开。

可以读一段,写一段,也可以全部读入,再写出。

最后关闭文件。

当然,要是调用DOS

复制命令:

system("copy

file_A.txt

file_B.txt")

不用自己打开和读写了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/11787881.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存