请教如何修改一文件中特定行的内容
请问如何修改文件?
在如下文件中
staystat = 355646
triggertime =1200
.
.
.
.
dir = /opt/logs
我想修改triggertime 等于号后面的数字。请问如何写程序?
argv[1]为文件名,argv[2]为要该的参数名,argv[3]为参数值。
#include<stdio.h>
#include<string.h>
int main(int arg,char **argv)
{
int i;
FILE *fp;
char buf[1024];
bool isfound=true;
printf("arg = %d\n",arg);
fp=fopen(argv[1],"a+");
if (fp==NULL)
{
printf("can't open the file %s\n",argv[1]);
exit(1);
}
printf("the parameter is %s\n",argv[2]);
while ( fgets(buf,1024,fp)!=NULL)
{
isfound=true;
printf("this row is %s,%d\n",buf,strlen(argv[2]));
for (i=0;i<strlen(argv[2]);i++)
{
printf("first char is %c\n",*(buf+i));
printf("second char is %c\n",*(argv[2]+i));
if (*(buf+i)!=*(argv[2]+i))
{
isfount=false;
break;
}
}
if (isfound)
{
请问此处应该如何写???
}
}
}
请问还有什么更好的办法实现这样的功能呢?