有一个" Docs"我项目中的文件夹。我想创建并写入该文件夹下的XML文件。 这是我的尝试:
string myPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var finalPath = Path.Combine(myPath, "Docs");
using (XmlWriter writer = XmlWriter.Create(finalPath + @"\employees.xml"))
{
writer.WriteStartDocument();
writer.WriteStartElement("Employees");...
我得到了这个例外:
{"无法找到路径的一部分 ' C:\用户\ ... \ ConsoleApplication6 \ ConsoleApplication6 \ BIN \调试\文档\ employees.xml'"}
我该如何解决这个问题?
答案 0 :(得分:1)
项目结构中的目录(谢天谢地!)没有复制到项目的输出中 - 因此当您尝试访问Assembly.GetExecutingAssembly().Location
下的子目录时(正如您可能看到的那样,默认情况下= YOUR_PROJECT_PATH + \ bin \ + Debug | Release),你无法找到它。
Directory.CreateDirectory
是你的朋友;如果目录已经存在,那么它不会做任何事情(不会抛出任何异常),因此它可以安全地用于确保给定目录存在。