INT GetStringUntil(FILE* pFile, CHAR czGet[], CHAR czUntil[], INT iUntilLen) { INT i; CHAR c; i = 0; while(TRUE) { c = fgetc(pFile); if(c == EOF) { break; } if(CharInStr(c, czUntil, iUntilLen)) { break; } czGet[i++] = c; } czGet[i] = 0; return i; }
CHAR GetNextAvaliChar(FILE* pFile, CHAR czUnavail[], INT iUnavailLen) { CHAR c; while(TRUE) { c = fgetc(pFile); if(c == EOF) { break; } if(!CharInStr(c, czUnavail, iUnavailLen)) { break; } } return c; }
bool Loader::ReadString(char *buffer, char *delims) { int i = -1; bool result; char Whitespace[8] = " \t\b\r\f\v\012"; char *Delims; if (feof(f)) return false; Delims = (delims == NULL ? Whitespace : delims); do { i++; result = ReadChar(buffer + i); } while (result && !CharInStr(buffer[i], Delims)); buffer[i] = '\0'; return true; }