创建在某些项目上工作的json文件的代码在所有新项目上都会失败。
以管理员身份运行无济于事。
请帮帮我!
我创建的所有新的ASP.Net核心MVC项目都无法在本地目录中创建文件。失败的代码是:
string _physicalPath = Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "Files"), "tblTxt.json");
using (StreamWriter writer = System.IO.File.AppendText(_physicalPath))
{
writer.WriteLine("log message");
}所有新项目的结果都是:{System.IO.DirectoryNotFoundException:找不到路径'C:\Program Files\IIS Express\Files\tblTxt.json‘的一部分。在System.IO.FileStream.ValidateFileHandle(SafeFileHandle模式)在System.IO.FileStream.CreateFileOpenHandle(FileMode模式,FileShare共享,FileOptions选项)在System.IO.FileStream..ctor(字符串路径,FileMode模式,FileAccess访问,FileShare共享,Int32 bufferSize,FileOptions选项)在System.IO.StreamWriter..ctor(字符串路径,布尔附加,编码编码,Int32 bufferSize)在System.IO.StreamWriter..ctor(字符串路径,布尔附加)在System.IO.File.AppendText(字符串路径)在app,C:\Users\patri\source\repos\WebAutomation\WebAutomation\Startup.cs:line 25中的IHostingEnvironment环境)}
发布于 2019-02-05 02:42:59
首先,Path.Combine(Path.Combine(Directory.GetCurrentDirectory(),“文件”)不是很好的传递字符串,如下所示
var t = Path.Combine("D:", "DOWNLOADS","abc");//==>D:\DOWNLOADS\abc其次,Directory.GetCurrentDirectory()会给出'C:\Program Files\IIS Express\Files\tblTxt.json‘。
Check if "Files" directory exists in "C:\Program Files\IIS Express" using
"Directory.Exists()"
if it dosent exist then create one using "Directory.CreateDirectory()"
Directory.CreateDirectory(@"C:\Program Files\IIS Express\Files")https://stackoverflow.com/questions/54521156
复制相似问题