我想在创建文件时为文件名添加一个时间戳,但我尝试过的大多数DateTime方法都会输出带有空格和斜杠的内容。例如:
Debug.WriteLine(DateTime.Now.ToString()); // <-- 9/19/2012 1:41:46 PM
Debug.WriteLine(DateTime.Now.ToShortTimeString()); // <-- 1:41 PM
Debug.WriteLine(DateTime.Now.ToShortDateString()); // <-- 9/19/2012
Debug.WriteLine(DateTime.Now.ToFileTime()); // <-- 129925501061462806ToFileTime()可以工作,但并不完全是人类可读的。如何将输出格式化为可用于文件名或扩展名中的日期和时间的人类可读的时间戳?最好是像2011-19-9--13-45-30这样的东西
发布于 2012-09-20 01:44:17
您可以使用以下命令:
DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss");发布于 2012-09-20 01:48:43
我将使用ISO 8601格式,不带分隔符:
DateTime.Now.ToString("yyyyMMddTHHmmss")发布于 2016-10-26 07:59:17
我也有类似的情况,但我希望以一种一致的方式也能从文件名使用DateTime.Parse,所以我选择了
DateTime.Now.ToString("s").Replace(":", ".") // <-- 2016-10-25T16.50.35当我想要解析时,我可以简单地颠倒Replace调用。这样,我就不必输入任何yymmdd内容或猜测DateTime.Parse允许的格式。
https://stackoverflow.com/questions/12500091
复制相似问题