首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以在文件名或扩展名中使用的DateTime.ToString()格式?

可以在文件名或扩展名中使用的DateTime.ToString()格式?
EN

Stack Overflow用户
提问于 2012-09-20 01:42:55
回答 8查看 138.1K关注 0票数 124

我想在创建文件时为文件名添加一个时间戳,但我尝试过的大多数DateTime方法都会输出带有空格和斜杠的内容。例如:

代码语言:javascript
复制
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()); // <-- 129925501061462806

ToFileTime()可以工作,但并不完全是人类可读的。如何将输出格式化为可用于文件名或扩展名中的日期和时间的人类可读的时间戳?最好是像2011-19-9--13-45-30这样的东西

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2012-09-20 01:44:17

您可以使用以下命令:

代码语言:javascript
复制
DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss");
票数 208
EN

Stack Overflow用户

发布于 2012-09-20 01:48:43

我将使用ISO 8601格式,不带分隔符:

代码语言:javascript
复制
DateTime.Now.ToString("yyyyMMddTHHmmss")
票数 148
EN

Stack Overflow用户

发布于 2016-10-26 07:59:17

我也有类似的情况,但我希望以一种一致的方式也能从文件名使用DateTime.Parse,所以我选择了

代码语言:javascript
复制
DateTime.Now.ToString("s").Replace(":", ".") // <-- 2016-10-25T16.50.35

当我想要解析时,我可以简单地颠倒Replace调用。这样,我就不必输入任何yymmdd内容或猜测DateTime.Parse允许的格式。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12500091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档