如何格式化设置 TraceOutputOptions = TraceOptions.Timestamp 时打印的时间戳数据?
我得到类似的东西:Timestamp=41329240725(写在输出文本文件上的实际值)
已编辑:我想要类似 10:22:34.32938 的内容。我应该如何配置 TextWriterTraceListener 来实现这一点?
如何格式化设置 TraceOutputOptions = TraceOptions.Timestamp 时打印的时间戳数据?
我得到类似的东西:Timestamp=41329240725(写在输出文本文件上的实际值)
已编辑:我想要类似 10:22:34.32938 的内容。我应该如何配置 TextWriterTraceListener 来实现这一点?
您真的要记录消息的写入时间吗?如果是这样,您想使用TraceOptions.DateTime
. 请注意,根据MSDN,时间写为 UTC。
如果您想更好地控制时间的格式(包括如果您希望它以 UTC 以外的其他方式表示),那么您可能已经编写了自己的自定义 TraceListener,或者找到一个可以满足您需求的 TraceListener。
System.Diagnostics 的一个有用的附加功能是Ukadc.Diagnostics。有了它,您可以轻松地为您的日志消息添加自定义格式(类似于您可以使用 log4net 和 NLog 执行的操作)。
以下是我过去提供的一些其他答案链接,用于记录您可能会发现有用的问题:
我应该什么时候使用 Tracing vs Logger.NET、Enterprise Library、log4net 或 Ukadc.Diagnostics?
根据这个页面
http://msdn.microsoft.com/en-us/library/a10k7w6c.aspx
TraceOptions Timestamp 返回刻度数,因此要将刻度转换为时间,您需要执行以下操作:
DateTime date = new DateTime(41329240725);
string FormattedDate = date.ToShortDateString();
但是 41329240725,对于蜱虫来说似乎有点小(我希望这只是一个例子)