Bal*_*i C 40 c# windows filenames
我已经有这个问题很多次了,并且刚刚使用了一种解决方法,但我想在这里可以提出一个更容易的选择.当我有一个字符串,DateTime.Now
然后我想在文件名中使用它我不能,因为Windows不允许字符/和:在文件名中,我必须去替换它们,如下所示:
string filename = DateTime.Now.ToString().Replace('/', '_').Replace(':', '_');
Run Code Online (Sandbox Code Playgroud)
这似乎有点麻烦,有更简单的方法吗?任何建议非常感谢.
Roy*_*mir 57
DateTime.Now.ToString("dd_MM_yyyy")
Run Code Online (Sandbox Code Playgroud)
xan*_*tos 48
正如Samich所写,但是
// The following will produce 2011-10-24-13-10
DateTime.Now.ToString("yyyy-MM-dd-HH-mm", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
如果您不信任我,请尝试将文化设置为new CultureInfo("ar-sa");
:-)
我要补充一点,如果你讨厌世界,这是最精确的事情:
DateTime.Now.Ticks.ToString("D19");
Run Code Online (Sandbox Code Playgroud)
有19位数字 DateTime.MaxValue.Ticks
如果你更恨世界:
DateTime.Now.Ticks.ToString("X16");
Run Code Online (Sandbox Code Playgroud)
有16个十六进制数字DateTime.MaxValue.Ticks
.
Sam*_*ich 10
使用ToString模式:
DateTime.Now.ToString("yyyy-MM-dd-HH-mm") // will produce 2011-10-24-13-10
Run Code Online (Sandbox Code Playgroud)