0

アプリケーションで Pantheios を使用しており、1 時間ごとに新しいログ ファイルを生成したいと考えています。日付と時刻を追加する方法を説明するブログ エントリを見たことがあります (http://blog.pantheios.org/2010/10/pantheios-101-beta-197-released-befile.html)。たとえば、次のように使用します。

pantheios_be_file_setFilePath("test-%T-%D.log");

ここで、%T 指定子は、HHMMSS 形式の現在の時刻に置き換えられます。%D 指定子は、YYYYMMSS 形式の現在の日付に置き換えられます。

上記の例では、1 分ごとに一意のファイルが作成されます。私の質問は、1 時間ごとにファイルを作成できるかどうかです。%H と %HH を使用してみましたが、どちらも機能しません。助けてくれてありがとう。

4

1 に答える 1

0

あなたの質問は少し間違っています。

上記の例では、1 分ごとに一意のファイルが作成されます。

どうしてそう思うの?関数pantheios_be_file_setFilePath()を使用すると、ログ ファイルに一意の名前を設定するだけで済みます (新しいファイルを作成するための定期的な呼び出しではありません)。何かを見逃した場合は訂正してください。ただし、1 分ごとに新しいファイルを作成するコード行はありません。必要に応じて、タイマー付きのスレッドを作成します。

ところで、 bec.file.cpp:1050からの次の行のため、%Tまたは%Dとは異なるものを設定することはできません:

// 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);

ご覧のとおり、解析できるシンボルは 2 つだけです。%Hまたは%HHはありません。

于 2012-04-19T04:11:01.837 に答える