1.已经存在的log文件的尺寸 大于限制大小尺寸LOGMAXSIZE的时候
删除再文件中最早的一条log
文件大小是1024k
请问如何判断

解决方案 »

  1.   

    GetFileSize得到总尺寸
    CStdio::ReadString,
    累计每一行的大小,直到剩下的小于1024K.
      

  2.   

    FILE* m_File;
            long m_FileLen;
    m_File = _wfopen(lpszFileName,L"rb");//打开文件供以后读取
    if (m_File)
    {
    fseek(m_File, 0, SEEK_END);
    m_FileLen = ftell(m_File) - 6; //获得文件的大小
    }
      

  3.   

    CFile::GetFileLength 获取文件大小
    对于你的日志删除记一条的方式,建议增加一个文件首部,使用环形缓冲区的思想对文件进行处理
    记录第一条日志的位置和最后一条日志的位置
    删除第一条日志只需要修改首部中的一个值就可以 
      

  4.   

    顶.,如何文件的内容读入内存,,对内存中每条记录进行判断,删除最后一条Log,再写入文件
    怎么实现啊!
      

  5.   

    用CStdioFile,它有ReadString,WriteString方法,查找msdn,了解它的用法。