C++ 获取文本文件的行数

从网上找了两种获取文本文件行数的方法:

char *Name="文件";
    FILE * fp=fopen(Name,"r");
    fseek(fp,0,0);
    int i=0;
    //long lg=ftell(fp);
    /*GetSystime();
      第一种
    char c;
     while (    (c=fgetc(fp))  != EOF ) 
     {
     
      if(c == '\n')
          i++;
     }*/
     GetSystime();
          第二种
     char line[256]={0};
     while(fgets(line,255,fp))
     {
         i++;
     }
     GetSystime();
}
void CPublishPoint2::GetSystime()
{
    SYSTEMTIME sys; 
    GetLocalTime( &sys ); 
    TCHAR sz[200];
     _stprintf(sz,_T("%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n"),sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);
    
     OutputDebugString(sz);

}

很明显 第二种 比第一种快很多!!!!

posted on 2014-05-16 14:02  markygis  阅读(7385)  评论(0编辑  收藏  举报