我有一个本地xml文件,需要将它加载到隔离存储时,我的应用程序。第一次开始。但如果我打开该文件使用流或File.Open它是抛出一个错误。 另外我需要以序列化的形式存储该文件。请帮忙,因为对于WP7和C#而言,新手无法破解它。在WP7中打开一个本地xml文件
下面的代码是用于打开XML文件:
FileStream stream = new FileStream("site.xml", FileMode.Open);
我有一个本地xml文件,需要将它加载到隔离存储时,我的应用程序。第一次开始。但如果我打开该文件使用流或File.Open它是抛出一个错误。 另外我需要以序列化的形式存储该文件。请帮忙,因为对于WP7和C#而言,新手无法破解它。在WP7中打开一个本地xml文件
下面的代码是用于打开XML文件:
FileStream stream = new FileStream("site.xml", FileMode.Open);
你需要指定的FileAccess模式以及对任何内容类型的资源,因为你不能在写模式打开它。
试着改变你的代码:
FileStream stream = new FileStream("site.xml", FileMode.Open, FileAccess.Read);
而且,看到了这个问题:How to fix exception MethodAccessException during file reading?
我打开一个“Content”文件site.xml如下; FileStream stream = new FileStream(“site.xml”,FileMode.Open); – Dheeraj
查看我的更新回答。 –
如果该文件是你的项目,那么你可以将文件添加到您的项目资源的一部分。这意味着文件“Build Action”的文件应该是“Resource”。下面的函数可以从项目资源中读取文件。
Stream stream = this.GetType().Assembly.GetManifestResourceStream("Namespace.FileName.FileExtentation");
现在您可以根据文件类型读取流。如果它是一个XML文件,那么你可以像下面这样读取它。
作为一个例子
XElement element = XElement.Load(stream);
foreach (XElement phraseElement in element.Elements())
{
MyClass foo = new foo();
foreach (XAttribute attribute in phraseElement.Attributes())
foo.Text = attribute.Value;
}
如何写入独立存储和读取独立存储文件?请查看以下链接
http://www.codebadger.com/blog/post/2010/09/03/Using-Isolated-Storage-on-Windows-Phone-7.aspx
你也可以检出以下关于本地数据存储的Windows Phone上的链接。
http://msdn.microsoft.com/en-us/library/ff626522%28v=vs.92%29.aspx
你能解释一下你的情况吗?你有这个文件已经在设备上?或者它在您的应用程序项目中?你想将它保存到独立的存储? –
你能分享错误讯息吗? – Somnath
是的,该文件在应用程序项目中,我需要将其存储在独立存储中。但每当我打开该文件并运行应用程序。引发异常如“尝试访问方法失败:System.IO.FileStream..ctor(System.String,System.IO.FileMode)” – Dheeraj