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.
}
让我们直截了当, 这是我的代码:
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.
}