C++ 日志文件名中的Pantheios日期/时间

C++ 日志文件名中的Pantheios日期/时间,c++,visual-studio-2010,logging,pantheios,C++,Visual Studio 2010,Logging,Pantheios,我在应用程序中使用Pantheios,我希望每小时生成一个新的日志文件。我看过一篇解释如何添加日期和时间的博客文章(http://blog.pantheios.org/2010/10/pantheios-101-beta-197-released-befile.html)例如,使用: pantheios_be_文件_setFilePath(“测试-%T-%D.log”) 其中%T说明符由当前时间替换,格式为HHMMSS。%D说明符将替换为当前日期,格式为YYYYMMSS 上面的示例将每分钟创建一

我在应用程序中使用Pantheios,我希望每小时生成一个新的日志文件。我看过一篇解释如何添加日期和时间的博客文章(http://blog.pantheios.org/2010/10/pantheios-101-beta-197-released-befile.html)例如,使用:

pantheios_be_文件_setFilePath(“测试-%T-%D.log”)

其中%T说明符由当前时间替换,格式为HHMMSS。%D说明符将替换为当前日期,格式为YYYYMMSS


上面的示例将每分钟创建一个唯一的文件。我的问题是是否有可能每小时创建一个文件。我尝试过使用%H和%HH,但两者都不起作用。提前感谢您的帮助。

您的问题有点不正确

上面的示例将每分钟创建一个唯一的文件

你为什么这么认为?通过使用函数pantheios\u be\u file\u setFilePath(),您只需为日志文件设置一个唯一的名称,而无需其他(而不是定期调用以创建新文件)。如果我遗漏了什么,请纠正我,但是没有任何代码行,每分钟都会创建一个新文件。如果需要,可以创建一个带有计时器的线程

顺便说一句,由于bec.file.cpp:1050中的下一行,您无法设置与%t%D不同的内容:

正如您所看到的,只有两个符号可以被解析。没有任何%H%HH

// date format: YYYYMMDD
// time format: hhmmss

pan_char_t const* const date    =   pan_strstr_(fileName, PANTHEIOS_LITERAL_STRING("%D"));
pan_char_t const* const time    =   pan_strstr_(fileName, PANTHEIOS_LITERAL_STRING("%T"));

size_t const            nameLen =   pan_strlen_(fileName);