从fread读文件内容到char*中,可能是包含很多'\0'字符的。此时用一些字符串类去format这个char*会出现读取不完整的问题,因为字符串碰到‘\0’字符就结束了。
可以从以下2个方法去查找该char*中的字串。
1.vc方法
//先用CString拼接 char* fpbuff; int FileSize; CString str; for (int i = 0; i < FileSize; i++) { if (fpbuff[i] == 0) str += ' '; else str += fpbuff[i]; } //然后去find子字符串 2.c语言方法 int FindString(char * pSrc, int srcSize, char * pDest, int dstSize) { int iFind = -1; for(int i=0;i<srcSize;i++){ int iCnt = 0; for (int j=0; j<dstSize; j++) { if(pDest[j] == pSrc[i+j]) iCnt++; } if (iCnt==dstSize) { iFind = i; break; } } return iFind; }