System.IO 无法使用有效路径创建文件?

System.IO Cannot create file with valid Paths?

让我们直截了当, 这是我的代码:

            DateTime today = DateTime.Today;
        if (!File.Exists(@"./Application/logs/" + today.ToString("d").Replace("/", ".") + ".txt"))
        {
            File.Create(@"./Application/logs/" + today.ToString("d").Replace("/", ".") + ".txt");
        }

出于某种原因,它给了我这个错误。

Could not find a part of the path 'C:\Users\REDACTED\source\repos\Application\Application\bin\Debug\Application\logs.4.2021.txt'.'

我运行通过一些测试,进入了它的目录,目录就在那里。

想法#1:我认为它在末尾加了一个点,如果是这样,你能找到一种方法来防止它吗? 思考 #2:它可能认为这是一个目录。

您指定的一个或多个目录不存在,这就是它抛出 DirectoryNotFoundException.

的原因

尝试先创建目录,然后再创建文件。

var today = DateTime.Now;
var path = Path.Combine( @".\Application\logs", $"{today.ToString( "d" ).Replace( "/", "." )}.txt" );

var directory = Path.GetDirectoryName( path )!;

// You don't need to check if the directory exists first.
Directory.CreateDirectory( directory );

if ( !File.Exists( path ) )
{
    using var file = File.Create( path );    
    // Do some awesome stuff with your newly created file.             
}