第一種方法: 也可以讀取一個不定長的文件。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供銅官網(wǎng)站建設、銅官做網(wǎng)站、銅官網(wǎng)站設計、銅官網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、銅官企業(yè)網(wǎng)站模板建站服務,10年銅官做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
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 );
第二種方法:
// 計算字符個數(shù)
FILE *pFile = fopen( pFilePath, \"r\" );
char ch;
int num = 0;
while ( ch = getc( pFile ) != EOF )
{
num++ ;
}
fclose( pFile );
intfile_size(char*filename)
{
FILE*fp=fopen(filename,"r");
if(!fp)return-1;
fseek(fp,0L,SEEK_END);
intsize=ftell(fp);
fclose(fp);
returnsize;
}
擴展資料
C語言獲取文件長度及全部內容
FILE*fp;
fp=fopen("localfile","rb");//localfile文件名
fseek(fp,0L,SEEK_END);/*定位到文件末尾*/
flen=ftell(fp);/*得到文件大小*/
p=(char*)malloc(flen+1);/*根據(jù)文件大小動態(tài)分配內存空間*/
if(p==NULL)
{
fclose(fp);
return0;
}
fseek(fp,0L,SEEK_SET);/*定位到文件開頭*/
fread(p,flen,1,fp);/*一次性讀取全部文件內容*/
p[flen]=0;/*字符串結束標志*/
告訴你一個最方便的函數(shù):stat,例:
struct stat fileData;
if (0 == stat("C:\log.txt", fileData))
{
printf("file size %u.", fileData.st_size);
}