Reading text from a file - non 'block i/o' - this could be much faster if we didn't use single char reads

Example usage:

ImportT../../business/cgisys/extFile__pText___new_ImportTextFile_.css"D:\\code\\cgi\\utils\\init.txt");

while(pText->ReadLine()) printf(pText->Line());

delete pText;

==========================================================

//ok guys, there's some pretty sloppy code here, Jamie

class ImportTextFile
{
public:
ImportT../../business/cgisys/extFile_char__pcFName.css);
~ImportT../../business/cgisys/extFile_.css);
COUNT ReadLine(); //eof etc if returns 0
char* Line() { return pcBuf; };
char* Separater(char *pcStr); //Add by Vlada 5.3.2001

private:
FILE *in;
LONG curpos;
char* pcBuf;
};

ImportTextFile::ImportT../../business/cgisys/extFile_char__pcFName.css)
{
pcBuf = new char[3072]; //1024
in = fopen(pcFName, "rt");
curpos = 0;
}

ImportTextFile::~ImportT../../business/cgisys/extFile_.css)
{
if(in) fclose(in);
delete [] pcBuf;
}

COUNT ImportTextFile::ReadLine()
{
int i = 0;
memset(pcBuf, 0, 3072); //1024
for( ; i < 1024; i++)
{
pcBuf[i] = fgetc(in);
if(pcBuf[i] == EOF || pcBuf[i] == '\n' || pcBuf[i] == '\r')
{
pcBuf[i] = '\x0';
break;
}
}
return i;
}

char *ImportTextFile::Separater(char *pcStr) //Add by Vlada 5.3.2001
{
if(!pcStr) return NULL;

char *pcHelp = new char[strlen(pcStr)+1];
strcpy(pcHelp,pcStr);

pcStr = strtok(pcStr, "=");
if(!pcStr || !strcmp(pcStr, pcHelp))
{
delete[] pcHelp;
return pcStr;
}
pcStr = strtok(NULL, "=");
delete[] pcHelp;
return pcStr;
}