以编程方式创建xml文件

时间:2011-01-10 09:05:21

标签: c# xml

我试图创建一个xml文件,然后将其保存到文件位置......

string xmlPath = AppDomain.CurrentDomain.BaseDirectory.ToString() + "cities.xml";

XDocument doc = new XDocument(  
        new XElement("Cities",
            new XElement("City",
                new XAttribute("id", gid),
                new XElement("CityName", cityname))));
doc.Save(xmlPath);

问题是它没有被保存到指定的位置......

4 个答案:

答案 0 :(得分:8)

尝试使用System.IO.Path.Combine方法确保a)在目录和文件名之间有必要的反斜杠,并且b)确保你没有多个:

string xmlPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, 
                                        "cities.xml");

另外:也许您的用户帐户没有写入该目录的权限。尝试使用隔离存储或其他目录 100%确定,允许用户写入。

答案 1 :(得分:3)

代码看起来很好,当我在本地测试它时,它工作。确保xmlPath指向当前用户具有写入权限的目录。作为旁注,最好使用Path.Combine

答案 2 :(得分:2)

如果您正在使用Windows应用程序路径将指向bin目录,我认为它保存在bin目录中

答案 3 :(得分:1)

您可以做的最好的事情是通过调试器运行此程序并检查xmlpath变量中的位置,并检查普通本地用户是否具有此目录的写入权限。文件夹或路径可能存在任何问题。然而,没有任何其他信息,很难给出更具描述性的答案。