【问题标题】:Use date as a filepath使用日期作为文件路径
【发布时间】:2018-11-22 09:47:32
【问题描述】:

根据日期,我需要以下文件路径:

yyyy\MM\d

虽然我可以像这样调用 DateTime 类:

string filepath = DateTime.Now.ToString(@"yyyy\MM\d");

但是,它会产生: “2018M11d”这是错误的。

有没有办法摆脱反斜杠?

【问题讨论】:

  • 我认为文件系统不能使用 \ 作为文件名的一部分
  • 它是,而不是用点替换黑斜线,它仍然是有意义的数据
  • 你想要这个输出2018\11\22

标签: c# .net datetime


【解决方案1】:

是的。可以的。

string filepath = DateTime.Now.ToString(@"yyyy\\MM\\d");

【讨论】:

【解决方案2】:

最安全的方法是将日期拆分为各个组件,然后使用Path.Combine

var dateParts = DateTime.Now.ToString("yyyy MM d").Split(' ');
var filePath = Path.Combine(dateParts);

这将您与您并不真正关心的底层文件系统细节(即哪个字符用作目录分隔符)隔离开来。

【讨论】:

    【解决方案3】:

    你可以这样做:

    DateTime.Now.ToShortDateString();
    

    这会对你有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-11
      • 2016-02-01
      • 2017-05-14
      • 2010-12-31
      相关资源
      最近更新 更多