用c语言对文件的三种情况的简单处理(输入字符进文件,输出文件中字符到终端(小框框),将一文件字符串复制到另一文件中)

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 20
int main()
{
    
        
	FILE *p1,*p2,*p3,*p4;//为了易于理解,以下分为三个对文件操作方式 
	char str1[N],str2[N],str3[N],str4[N];
	
	
	/*创建一个文件1,将字符输入到文件中*/
	printf("//创建一个文件,将字符输入到文件中//\n");
	if((p1=fopen("D:\\1.txt","w"))==NULL)//以只写方式打开1文件
	{
    
    
		printf("error");
		exit(0);
	}
	printf("输入字符串:\n");
	scanf("%s",str1);
	fputs(str1,p1);//放入字符串
	printf("复制成功!\n\n");
	
	
	/*创建一个文件2,将文件中的字符输出*/
	printf("//创建一个文件,将文件中的字符输出//\n");
	if((p2=fopen("D:\\2.txt","r"))==NULL)	
	{
    
    
		printf("error");
		exit(0);
	}
	fgets(str2,20,p2);//把p2指向的文件的前20个字符串复制到srtr2数组中 
    printf("%s\n\n",str2);
   	printf("复制成功!\n\n");
   	/*注意fgets()不能将文件中的汉字存入str2中*/
	    
	    
   	/*将文件3字符复制到文件4中*/
   	printf("//将文件3字符复制到文件4中//\n"); 
    if((p3=fopen("D:\\3.txt","rb"))==NULL)//打开1文件 
	{
    
    
		printf("error");
		exit(0);
	}
	if((p4=fopen("D:\\4.txt","wb"))==NULL)//打开1文件 
	{
    
    
		printf("error");
		exit(0);
	}
	fgets(str3,20,p3);//把p3文件字符复制到str3 
	strcpy(str4,str3);//把str3复制到str4 
	fputs(str4,p4);/把str4复制到p4 
    printf("复制成功!\n"); 
    /*注意fgets()不能将文件中的汉字存入str2中*/ 
    /*要想处理汉字,可以另设一变量ch, 利用循环解决*/
    
	fclose(p1);
	fclose(p2);
	fclose(p3);
	fclose(p4);
} 

猜你喜欢

转载自blog.csdn.net/qq_52001969/article/details/112474623