C语言在txt文本后面添加字符串函数总结

本文主要总结,用C语言封装一个函数void add_string_in_txt(char *addString),该函数的功能是在txt文本后面,自动添加内容,具体的步骤如下所述。

1.1新建一个.h头文件和.c源文件,然后分别在.h头文件和.c源文件内,添加如下代码:

add_string_in_txt.h头文件

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>  // 删除txt文件

 
 
void add_string_in_txt(char *addString);


add_string_in_txt.c源文件

#include "add_string_in_txt.h"

 
 
#define MAX_LINE 1024

 
 
void add_string_in_txt(char *addString)
{
	//新建一个txt文件
	FILE *fp;	
	fp=fopen("D:\\QtProject\\uuid12\\test.txt","w");
	fclose(fp);
	
	//将txt文本内容全部读取并存储在变量txt_content里面
	 char buf[MAX_LINE];  /*缓冲区*/
	 char txt_content[MAX_LINE];  /*缓冲区*/
	 FILE *fpRead;            /*文件指针*/
	 int len;             /*行字符个数*/
	 fpRead = fopen("D:\\QtProject\\uuid12\\test.txt","r");
	 while(fgets(buf,MAX_LINE,fpRead) != NULL)
	 { 
		// printf("%s\n",buf);
		
		strcat(txt_content,buf);
	 }	 
	 // strcat(txt_content,"\n");
	//在变量txt_content里面追加字符串addString
	// strcat(txt_content,"\n");
	 
	 // fputc('\n',fpRead);
	 
	 strcat(txt_content,addString);
	 printf("%s",txt_content);
	 fclose(fpRead);
 
 
	// 删除txt文件
	unlink("D:\\QtProject\\uuid12\\test.txt");
	
	//将变量txt_content写入txt文本
	FILE *fpWrite;	
	fpWrite=fopen("D:\\QtProject\\uuid12\\test.txt","w");//wb
	// fgets(buf,MAX_LINE,fpWrite);		
	fputs(txt_content,fpWrite);
	
	fprintf(fpWrite,"\n");
	fputc('\n',fpWrite);
 
 
	fclose(fpWrite);	 
}

1.2新建一个主函数.c,然后在其中写入如下代码,调用该函数:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "add_string_in_txt.h"

 
 
int main()
{
	add_string_in_txt("I am add string123......");
	add_string_in_txt("I am add string......");	
}

1.3在cygwin下编译,输入如下指令:

gcc write_txt.c add_string_in_txt.c -o write_txt.exe


./write_txt


1.4在test文本,查看输入内容如下图所示:



由上面结果可知,每次调用该函数,都能够在txt文本末尾追加自己写入的内容。



参考内容:

https://blog.csdn.net/naibozhuan3744/article/details/80595690

https://blog.csdn.net/naibozhuan3744/article/details/80610476