0

我正在开发 Windows 8 xaml C# 应用程序,我正在尝试读取一首歌曲 xml 并将新节点附加到它。代码是:

StorageFolder sf;
sf = KnownFolders.MusicLibrary;
StorageFile file = await sf.GetFileAsync(strSongName);
var item = await file.OpenAsync(FileAccessMode.Read);
IRandomAccessStream raStream;
IOutputStream outputStream;
DataWriter writer;
var lc = ApplicationData.Current.LocalFolder;
var infolder = Windows.ApplicationModel.Package.Current.InstalledLocation;

StorageFolder folder = await StorageFolder.GetFolderFromPathAsync(infolder.Path);
StorageFile file1 = await folder.GetFileAsync("songxml.xml");
var filetest = await file1.OpenAsync(FileAccessMode.Read);
Stream inStream = filetest.AsStreamForRead();
XDocument xdoc = XDocument.Load(inStream);
string content = xdoc.ToString();
raStream = await file1.OpenAsync(FileAccessMode.ReadWriteUnsafe);
outputStream = raStream.GetOutputStreamAt(0);
writer = new DataWriter(outputStream);
StringBuilder outputText = new StringBuilder();
outputText.Append(content.ToString());

运行此代码时出现 System.Unauthorizedaccessexception

4

2 回答 2

0

我有......实际上有同样的问题。鉴于您上次发表评论的日期,我想您现在已经弄清楚了。尽管如此,也许会有其他人访问这个线程,所以......我想你应该确保你已经将你期望的扩展添加到声明->支持的声明->文件类型关联。在使用音乐库时,可能不存在此限制,但对于文档库(制作案例),情况正是如此。

编辑:确保备份 LocalState 文件夹的内容,因为对应用程序清单的每次更改都会导致删除您的内容。

快乐编码

于 2013-02-12T10:24:30.033 回答
0

我的精神调试能力告诉我,您需要在您的能力中提及您将访问 Music known 文件夹,并且您还没有这样做。

在此处输入图像描述

我对吗?

于 2012-05-30T15:58:06.687 回答