C语言里如何把已有的字符串写入文件里?

C语言里如何把已有的字符串写入文件里?,第1张

设要写入的数字是int型,则用控制字符串%d和%s来完成,举例代码行如下:

fprintf(fp,"%d %s\n",12345,"abcdefg")

其中:fp是成功写打开文件的指针。此代码行先向文件写入整型数字12345,再加一个空格,接着写入字符串abcdefg,然后写入'\n'。

#include "stdio.h"

#include "string.h"

void main()

{

char a[6]="china"

char temp[1024]

int n=0//记录有多少个china

FILE *outFile=fopen("c:\b.txt","r+")

FILE *inFile=fopen("c:\a.txt","r+")

while(fgets(temp,500,inFile)!=NULL)

{

int k=0

for(int i=0i<strlen(temp)i++)

{

if(temp[i]==a[k] &&k<strlen(a))

{

k++

}

else

{

if(k==strlen(a))

{

n++

fprintf(outFile,"%s

",a)

}

k=0

}

}

}

}

在C盘要有这两个文件。。。

a文件中可能有多个china ,指定加到第几行自己看情况 在设置一个int变量记录就行了

步骤逻辑:

1:打开要写入字符串的文件并检查文件是否已打开。

2:向该文件写入指定的字符串。

3:关闭文件。

需要的头文件和函数(这里对函数的使用方法不再介绍):

1:stdio.h头文件下的fopen函数,fputs函数,fclose函数。

2:stdlib.h头文件下的exit函数。

以下是完整代码并附有详细注释:

#include <stdio.h>  //所用到的关键函数fopen,fputs,fclose都在stdio.h头文件中 

#include <stdlib.h>  //exit函数在stdlib.h头文件中 

int main(void)

{

    FILE *file = NULL  //定义一个文件类型(FILE)的指针并初始化 

    const char *FileName = "D:\\测试\\百度知道.txt"    //这里假设是要在D盘的“测试”文件夹中的“百度知道.txt”文件写入字符串。注意:字符串中写入'\'符号必须双写。 

    file = fopen(FileName, "r+")  //调用fopen函数,将返回值赋于指针file 

    

    if(!file)  //检查文件是否打开,若打开失败,返回一条信息后,结束程序。 

    {

        printf("文件打开失败,请检查文件是否存在!\n")

        exit(1) 

    }

    

    const char *string = "你知道,所以我知道。"  //需要写入的字符串内容。 

    

    if(!fputs(string, file))  //调用fputs函数写入文件,不管成功或失败都会返回一条信息。 

        printf("写入成功!\n") 

    else

        printf("写入失败!\n")

         

    fclose(file)  //关闭文件。 

    file = NULL   //放空file指针。 

    return 0

}


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

原文地址: http://outofmemory.cn/tougao/8135297.html

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

发表评论

登录后才能评论

评论列表(0条)

保存