我需要创建一些日志文件,文件名如下:HH: mm_dd-MM-yyyy.log
我已经尝试转换日期时间&DateTime。现在像这样,但是编译器遇到下一个错误:
The given path's format is not supported.
我试过的代码:
#1
var currentDateTime = DateTime.Now;
string format = "HH:mm_dd-MM-yyyy";
string datetime = currentDateTime.ToString(format);
File.Create("Log/GameLog/"+datetime+".log");
#2
string datetime = DateTime.Now.ToString("HH:mm_dd-MM-yyyy");
File.Create("Log/GameLog/"+datetime+".log");
在这两种情况下,编译器会抛出相同的错误…所以最后,我的问题是,我如何使用日期时间作为文件名?
问题是:
字符,你不能在文件名
DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss");
寡妇操作系统不允许以下特殊字符在filename
/ : * ? " < > |
所以你需要用其他字符替换冒号:
(_
或-
)
试试这个:
string datetime = DateTime.Now.ToString("HH_mm_dd-MM-yyyy");
尝试删除格式返回的一些字符,然后每次添加它们,以查看导致问题的原因。
我猜可能是:字符引起了你的问题
也看看这篇文章,可能会有所帮助。
如何从路径和文件名中删除非法字符?
对