将一个文件的内容复制到另一个文件的 C 程序
cserver side programmingprogramming更新于 2024/11/5 15:19:00
文件是记录的集合(或)是硬盘上的一个位置,数据永久存储在其中。通过使用 C 命令,我们可以以不同的方式访问文件。
文件操作
C 语言中可以对文件执行的操作如下 −
- 命名文件。
- 打开文件。
- 从文件中读取。
- 写入文件。
- 关闭文件。
语法
打开和命名文件的语法如下 −
FILE *File pointer;
例如,FILE * fptr;
File pointer = fopen ("File name”, "mode”);
例如,fptr = fopen ("sample.txt”, "r”);
FILE *fp; fp = fopen ("sample.txt”, "w”);
从文件读取的语法如下 −
int fgetc( FILE * fp );// 从文件中读取单个字符
写入文件的语法如下 −
int fputc( int c, FILE *fp ); // 将单个字符写入流
借助这些函数,我们可以将一个文件的内容复制到另一个文件中。
示例
以下是将一个文件的内容复制到另一个文件的 C 程序 −
#include <stdio.h> #include <stdlib.h> // For exit() int main(){ FILE *fptr1, *fptr2; char filename[100], c; printf("输入要打开的文件名
"); scanf("%s",filename); // 打开一个文件进行读取 fptr1 = fopen(filename, "r"); if (fptr1 == NULL){ printf("无法打开文件 %s
", filename); exit(0); } printf("输入要打开的文件名
"); scanf("%s", filename); // 打开另一个文件进行写入 fptr2 = fopen(filename, "w"); if (fptr2 == NULL){ printf("无法打开文件 %s
", filename); exit(0); } // 从文件读取内容 c = fgetc(fptr1); while (c != EOF){ fputc(c, fptr2); c = fgetc(fptr1); } printf("
内容已复制到 %s", filename); fclose(fptr1); fclose(fptr2); return 0; }
输出
当执行上述程序时,它会产生以下结果 −
输入要打开以读取的文件名 file3.txt 输入要打开以写入的文件名 file1.txt 内容已复制到 file1.txt