int lines()
{
FILE *fp;
int line=0;
int filesize=0;
char ch=0;
if((fp=fopen("c:\filename.txt","r"))==NULL)
fp=fopen("c:\filename.txt","w");
fseek(fp,0,SEEK_END);//將指針移到文件末尾
filesize=ftell(fp);//獲得文件的總的大小
fseek(fp,0,SEEK_SET);//將文件指針移到文件開頭
// printf("wenjianyigongyou %d da",filesize);
while(filesize)
{
ch=fgetc(fp);
if(ch==0x0a)//0x0a表示換行,當每次換行時line++
{
line=line+1;
}
filesize--;//filesize為零時整個文件已經讀完,判斷結束
}
// printf("通訊錄中一共有 %d個記錄\n",line);
fclose(fp);
return line;
}
幫忙解釋一下 具體一點 thx
第一次指向末端是為了獲得文件長度,第二次又指向前端,是統計行數