现在服务器上生成的log全在一个日志里面,还没有删除机制,几天就弄得一个文本文档好几G,这样查看里面内容很麻烦
怎么才能按照时间就是每隔一天生成一个
或者每到一定大小比如200M重新生成一个
问题是不想删掉之前的,可能会用到。void CLog::WriteLog( CString& StrTitle )
{
CStdioFile File;
CFileException FileException;
::EnterCriticalSection(&m_csLog);
if( File.Open( LogFileName, CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite | CFile::shareDenyNone, &FileException ) )
{
CString StrData;
if( StrTitle.GetLength() > 0 )
{
CTime Time = CTime::GetCurrentTime();
StrData = Time.Format( _T("%Y-%m-%d %H:%M:%S") );
StrData = StrData + _T("  ") + StrTitle;
} File.Seek( 0, CFile::end );
File.WriteString( StrData.GetBuffer(StrData.GetLength()) );
File.WriteString(_T("\n"));
File.Close();
}
else
{
#ifdef _DEBUG
CString StrError;
FileException.GetErrorMessage( StrError.GetBuffer(1024), 1024 );
//AfxMessageBox(_T("不能打开日志文件,错误代码为:") + StrError );
#endif
} ::LeaveCriticalSection(&m_csLog);
}具体代码是这样,怎么改进,在哪里改进,求帮助CFile生成log文件按时间生成安大小生成