- 论坛徽章:
- 3
|
简单修改
- #define _GNU_SOURCE
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define txtfile "test"
- int main()
- {
- FILE *fp, *fp2;
- char tmp[200];
- char *line=NULL;
- size_t len; int ret;
- memset(tmp, 0x00, sizeof(tmp));
- //read content form txtfile;
- fp=fopen(txtfile,"r");
- if(fp == NULL) {
- perror(txtfile);
- exit(EXIT_FAILURE);
- }
- while ((ret= getline((char **)&line, &len, fp)) != -1) {
- //if(line=="\n")continue;
- if (line[0] == '\n') continue;
- if(strstr(line,"name=apple"))
- strcat(tmp,"name=banana\n");
- else
- strcat(tmp,line);
- //strcat(tmp,"\n");
- }
- if (line != NULL) {
- free(line);
- }
- fclose(fp);
- //write content from tmp back to txtfile;
- fp2 = fopen(txtfile, "w");
- if(fp2 == NULL) {
- perror(txtfile);
- exit(EXIT_FAILURE);
- }
- ret=fputs(tmp,fp);
- if(ret <0||ret==EOF)
- printf("Write error!\n");
- fclose(fp2);
- return 0;
- }
复制代码 |
|