【发布时间】:2010-11-18 00:22:35
【问题描述】:
我想在 MFC 中创建一个日志文件,它应该在每次附加日志详细信息时写入日志文件,它不应该覆盖现有的详细信息。并且应该有一些大小限制,比如在这么大的大小之后创建一个新文件应该创建。
如何做到这一点? 任何帮助表示赞赏。 谢谢。
【问题讨论】:
标签: visual-c++ mfc
我想在 MFC 中创建一个日志文件,它应该在每次附加日志详细信息时写入日志文件,它不应该覆盖现有的详细信息。并且应该有一些大小限制,比如在这么大的大小之后创建一个新文件应该创建。
如何做到这一点? 任何帮助表示赞赏。 谢谢。
【问题讨论】:
标签: visual-c++ mfc
查看CStdioFile 类,特别是方法CStdioFile::WriteString。它使将文本写入文件变得容易。
当您打开文件时,您希望结合 CFile::modeCreate 和 CFile::modeNoTruncate 标志来创建文件,前提是该文件尚不存在。
您可以使用CFile::GetLength 方法获取文件的大小。
【讨论】:
嗨,我不知道你能不能使用外部库,但是 log4cpp 非常好的库,你不需要编写你自己的记录器类的实现 link text
【讨论】:
除了 CStdioFile,我还使用 WritePrivateProfileString 以日期和时间作为键名。因此,您可以以这种形式添加日志字符串:
[LOG]
5-2-2010 15:06:10:804=Starting program...
5-2-2010 15:04:53:815=Data updated succesfully.
【讨论】: