逐行替换文本中的字符串

时间:2012-05-08 14:10:15

标签: c

我如何在txt 中逐行检查下的字符串并替换每一个?

"FLD_CUSTORDREF_FLD"                 
"FLD_CUSTOMERNAME_FLD"            
"FLD_ADDRESSLINE1_FLD"             
"FLD_ADDRESSLINE2_FLD"             
"FLD_CITY_FLD"           

e.g。

If file line has "FLD_CITY_FLD"
  change to Header->City
else if file line has "FLD_CUSTOMERNAME_FLD" 
  change to Header->Name

我可以使用

读取每一行
while ( fgets ( line, sizeof line, file ) != NULL ) 

但我如何检查匹配的字符串?

1 个答案:

答案 0 :(得分:4)

您正在寻找strstr功能。

char *strstr(const char *haystack, const char *needle);
     

strstr()函数找到第一次出现的子字符串   在干草堆中的针。

然而,更换部件可能更棘手。我只会fprintf结果,而不是替换字符串。