由于以文本方式和二进制方式读取回车符,读取的长度都为为2,而我需要的是字符个数,下面两种方法经过调试,并且结果正确。
第一种方法: 也可以读取一个不定长的文件。
FILE *pFile = fopen( pFilePath, \"r\" );
if ( pFile == NULL )
{
return 0;
}
fseek( pFile, 0, SEEK_END );
iFileLen = ftell( pFile );
rewind( pFile );
m_pFileText = new char[iFileLen+1];
fread( m_pFileText, 1, iFileLen, pFile );
m_pFileText[iFileLen] = 0;
fclose( pFile );
第二种方法:
// 计算字符个数
FILE *pFile = fopen( pFilePath, \"r\" );
char ch;
int num = 0;
while ( ch = getc( pFile ) != EOF )
{
num++ ;
}
fclose( pFile );