您的位置:

c语言在文件中插入字符,c语言把字符串写入文件

本文目录一览:

C语言文件IO如何在指定位置插入字符串?

如果是C语言调用stdio.h库函数的话使用fseek设置文件指针,指向指定的位置,然后再用fprintf或者fwrite将数据写入文件中。如果是C语言调用windows.h库函数的话则调用SetFilePointer设置文件指针指向指定位置,之后再调用WriteFile将数据写入文件。

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

设要写入的数字是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=0;istrlen(temp);i++)

{

if(temp[i]==a[k] kstrlen(a))

{

k++;

}

else

{

if(k==strlen(a))

{

n++;

fprintf(outFile,"%s

",a);

}

k=0;

}

}

}

}

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

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

C语言向文件写入单个字符

调用库函数fputc(ch,fp);就把ch表示的一个字符写入文件了,fp是指向被打开的文件的指针。也可以用fprintf(fp,"%c",ch);操作。

C语言 如何向一个路径的文件中写入一段字符串?

步骤逻辑:

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;

}

c语言 文本文件的操作 字符写入

#includestdio.h

static int write_flag=1; /*写文件标志,即是否要将字符串写入文件*/

void function(char *str)

{

int i=0;

do

{

if((str[i++]=='b')(str[i]=='y')(str[i+1]=='e'))/*字符串中有“bye字串”*/

{ str[i+2]='\0'; /*截断字符串*/

write_flag=0; /*写文件标志置 0 */

break;

}

}while(str[i+2]!='\0');

}

int main()

{

int i,j;

char str[100]={0};

FILE *fp;

fp=fopen("answer.txt","w");

do

{

gets(str);

function(str);

fprintf(fp,"%s\n",str);

}while(write_flag);

fclose(fp);

while(1) gets(str);/*接收其他无效字符串。自己添加程序结束条件*/

return 0;

}

亲测通过!