C# 日期时间作为文件名

C# 日期时间作为文件名,c#,datetime,time,C#,Datetime,Time,我需要创建一些名称如下的日志文件: HH:mm_dd-mm-yyyy.log 我已尝试转换DateTime和DateTime。现在是这样,但编译器遇到下一个错误: The given path's format is not supported. 我尝试过的代码: #1 var currentDateTime = DateTime.Now; string format = "HH:mm_dd-MM-yyyy"; string datetime = currentDateTime.ToStrin

我需要创建一些名称如下的日志文件: HH:mm_dd-mm-yyyy.log

我已尝试转换DateTime和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作为文件名?

问题是
字符,不能在文件名中使用它

DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss");

Widows操作系统不允许在
文件名中使用以下特殊字符

/ \ : * ? " < > |

请尝试删除某些按格式返回的字符,然后一次将其添加到中,以查看是哪个字符导致了问题

我猜可能是这个角色给你带来了麻烦

也可以查看这篇文章,这可能会有所帮助


关于

和顺便说一句,如果您希望所有日志文件按日期排序,请使用
DateTime.Now.ToString(“yyyyMMddHHmmss”)则同一天的所有文件将始终粘在一起
string datetime = DateTime.Now.ToString("HH_mm_dd-MM-yyyy");