前に書く(インポート)
必ず前にプログラムを実行してください:「デスクトップに3つのテキストドキュメントを作成する」、A、B、Cという名前。もちろん、プログラム実行エラーを回避するために、ファイルを開く相対パスを変更したり、次のプログラムの「fopen( "A.txt"、 "r")」のファイルA.txtのパスを自分で変更したりすることもできます。 。
コード
アイデア:最初に各ファイルの要素を取得して文字配列に格納し、次に配列をマージして、最後に要素をファイルに書き込みます。(プログラムには詳細な注釈が付けられており、ここでは繰り返されません)
//导入头文件
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//主函数
int main(){
FILE *fa,*fb,*fc;//定义3个文件指针,指向文件 A、B、C
int i,j,k;//控制循环
char str[100],str1[100];
//判断文件 A 是否存在
if((fa=fopen("A.txt","r"))==NULL){
printf("文件A不存在!\n");
exit(0);
}
fgets(str,99,fa);//存储A内容到数组 str 中
fclose(fa);//关闭文件A
//判断文件 B 是否存在
if((fb=fopen("B.txt","r"))==NULL){
printf("文件B不存在!\n");
exit(0);
}
fgets(str1,100,fb);//存储A内容到数组 str1 中
fclose(fb);//关闭文件B
strcat(str,str1);//将字符数组 str1 中内容存储到字符数组 str 中
//判断文件 C 是否存在
if((fc=fopen("C.txt","w"))==NULL){
printf("文件C不存在!\n");
exit(0);
}
fputs(str,fc);//将数组 str 中内容写到文件 C 中
fclose(fc);//关闭文件 C
printf("信息合并完成! 请到文件 C 中查看.\n");//信息提示
return 0;
}
実行結果(3部構成の表示)
1.ファイルAのデータ:
2.ファイルBのデータ
3.ファイルCのマージされたデータ
(1)プログラムでは、デフォルトのファイルの場所は「ソースプログラムの保存場所またはデスクトップ」です。次に、図(2)に示すように、ファイルを開いて表示します。
(2)次の図に示すように、ファイルの内容は次のとおりです。