在给定的路径上创建XML文档

本文关键字:创建 XML 文档 路径 | 更新日期: 2023-09-27 18:10:16

从标题很清楚,我想在我的Silverlight 5应用程序中创建一个XML文档在某些路径。我知道我们可以使用System.Xml.Linq中的XDocument来创建XML文件。据我所知,如果我们使用XDocument,文件是在"我的文档"文件夹中创建的。如何将XML文档保存到所需的路径?是否有可能将XML文档保存到所需的路径与提升信任在Silverlight 5没有"保存文件对话框"?

UPDATE:虽然在XDocument中有一个方法Save()可用,但在Silverlight 5中Save()没有过载,它接受string参数,否则很容易将路径发送到Save()。我试图保存使用StreamWriter。下面是我的代码:

using (var outfile = new StreamWriter(@"C:'Users'Tejas'Desktop'Sample.xml"))
{
       var doc = new XDocument(new XElement("Root", new XElement("Child", "content")));
       doc.Save(outfile);
}

但它给我System.Security.SecurityException与消息File operation not permitted. Access to path 'C:'Users'Tejas'Desktop'Sample.xml' is denied.是因为我的Silverlight 5应用程序不受信任吗?还有一件事我想提一下,我不想用SaveFileDialog来实现。

在给定的路径上创建XML文档

按照您的意愿创建XDocument,用您喜欢的xml结构填充它。最后,您可以调用XDocument上的Save方法将其保存到一个位置。

一个非常简单的例子,假设你想保存到位置'c:'myXMLFolder'newXMLfiles'file.xml':

XDocument doc = new XDocument(
    new XElement("Root",
        new XElement("Child", "content")
    )
);
doc.Save("c:''myXMLFolder''newXMLfiles''file.xml");