2

タイトルがわかりにくいかもしれませんが、どのように表現すればよいかわかりません。

私は現在の時間のログを取得するためにこれを行っています:

'TraceSink-'yyyy-MM-dd HH'-Hourly.log'

どうすれば前の時間を取得できますか?すなわち:

'TraceSink-'yyyy-MM-dd (HH-1)'-Hourly.log'

そのような時間形式で可能なことはありますか?

編集:私はC#コードにアクセスできませんが、中身を変更できるexe.configを持っています。

DateTime.ToString(var);のvarのように

質問しすぎですか?

4

3 に答える 3

8

日付/時刻から1時間を減算し、それをフォーマットます。

于 2012-05-15T17:47:51.643 に答える
3

あなたの質問への答えはノーです。

フォーマット文字列はフォーマットのみを定義します。計算を実行する機能がありません(なぜそうなるのでしょうか?)

于 2012-05-15T18:00:54.257 に答える
0

この要件がある理由はわかりませんが、別のタイムゾーンのマシンからDateTimeオブジェクトを受信して​​いる可能性があります...フォーマット文字列にUTCからのオフセットを含めると役立つ場合があります。

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx#zSpecifier

このように、ログを見ると、特定のイベントがUTC-3時間に発生したことがわかります。

元のコードにアクセスせずにできる最善の方法だと思います。

于 2012-05-15T18:56:12.593 に答える