Find the value of a specified string in a file

int GetstrValue(unsigned char *pu1FileName, unsigned char *pu1SearchStr, unsigned char *pu1StrValue)
{
    
    
    FILE                   *pFile;
    unsigned char           au1Buf[80];
    unsigned char           au1ReadStr[80];
    unsigned char           au1StrValue[80];
    unsigned char           au1TmpValue[80];
    unsigned int            u4Flag = 0;
    unsigned char           *pu1Temp;
    pFile = fopen ((const char*)pu1FileName, "r");
    if (pFile == NULL)
    {
    
    
        return 0;
    }
    memset(au1Buf, 0, 80);
    while (!feof (pFile))
    {
    
    
        fgets (au1Buf, 80, pFile);
        if ((strstr (au1Buf, pu1SearchStr)) != NULL)
        {
    
    
            memset (au1ReadStr, 0, 80);
            memset (au1StrValue, 0, 80);
            memset (au1TmpValue, 0, 80);
            sscanf(au1Buf, "%s%s%s", au1ReadStr, au1StrValue, au1TmpValue);
            if (strcmp (au1ReadStr, pu1SearchStr) != 0)
            {
    
    
                continue;
            }
            if (strlen (au1TmpValue) != 0)
            {
    
    
                strcpy (pu1StrValue, au1TmpValue);
            }
            else
            {
    
    
                pu1Temp = au1StrValue;
                pu1Temp++;
                strcpy(pu1StrValue, pu1Temp);
            }
            u4Flag = 1;
            break;
        }
    }
    fclose (pFile);
    if (u4Flag == 1)
    {
    
    
        return 1;
    }
    else
    {
    
    
        return 0;
    }
}

For example:
1.txt

aaa =2
dd =7
dda =78

Guess you like

Origin blog.csdn.net/qq_38158479/article/details/115006290