XMLWriter上的DirectoryNotFoundException

时间:2014-09-25 07:42:08

标签: c# xml

有一个" 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'"}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

项目结构中的目录(谢天谢地!)没有复制到项目的输出中 - 因此当您尝试访问Assembly.GetExecutingAssembly().Location下的子目录时(正如您可能看到的那样,默认情况下= YOUR_PROJECT_PATH + \ bin \ + Debug | Release),你无法找到它。

Directory.CreateDirectory是你的朋友;如果目录已经存在,那么它不会做任何事情(不会抛出任何异常),因此它可以安全地用于确保给定目录存在。