正文

笔记:函数rewind()2009-08-26 13:28:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/shao/47139.html

分享到:

rewind

语法:
  #include <stdio.h>
  void rewind( FILE *stream );

函数rewind()把文件指针移到由stream(流)指定的开始处, 同时清除和流相关的错误和EOF标记.

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

用于学生管理系统,文件操作中:

void CStuDataBase::Initialize(char* pszDataBaseName)
{
 if (NULL == pszDataBaseName)                   
  throw "Connection to database fail,[Invalid FileName]";

 m_pfReadFile = fopen(pszDataBaseName,"a+b");
 if (NULL == m_pfReadFile)
  throw "Connection to database fail!";

 //开始读取数据
 rewind(m_pfReadFile);          //跳到文件开头
 int iCount = 0;
 while (fread(&m_stuObject[iCount],sizeof(m_stuObject[iCount]),1,m_pfReadFile) == 1)
 {
  iCount++; 
 }
 fclose(m_pfReadFile);

 m_RecordCount = iCount;        //保存记录
 
 if (m_pszDataBaseName)
 {
  delete []m_pszDataBaseName;
  m_pszDataBaseName = NULL;
 }
   
 //以下保存文件名以便以后使用
 int iFileNameMax = strlen(pszDataBaseName);
 m_pszDataBaseName = new char[iFileNameMax + 1];
 strncpy(m_pszDataBaseName,pszDataBaseName,iFileNameMax);
 m_pszDataBaseName[iFileNameMax] = '\0';
}

 

阅读(1976) | 评论(3)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册