这篇文章介绍的是通过编程去修改指定文件中我们想修改的内容;
假设我们有一个文件TEST.config,内容如下:
PEED=3
LENG=3
SCORE=9
LEVEL=5
我们要将LENG3改成LENG=5
代码如下:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
int main(int argc,char **argv){
int fdsrc;
char* buf=NULL;
fdsrc=open(argv[1],O_RDWR);
int size=lseek(fdsrc,0,SEEK_END);
lseek(fdsrc,0,SEEK_SET);
buf=(char*)malloc(sizeof(char)*size+7);
int n_read= read(fdsrc,buf,size);
char* p=strstr(buf,"LENG");
if(p== NULL){
printf("no found\n");
exit(-1);
}
p=p+strlen("LENG=");
*p='5';
lseek(fdsrc,0,SEEK_SET); //将光标移到文件开头
int n_write=write(fdsrc,buf,strlen(buf));
close(fdsrc);
return 0;
}