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

私は...実際に同じ問題を抱えていました。あなたの最後のコメントの日付を考えると、あなたは今までにそれを理解したと思います. それにもかかわらず、このスレッドにアクセスする他の人がいるかもしれないので... Declarations->Supported Declarations->File Type Associations に期待する拡張子を追加したことを確認する必要があると思います。ミュージック ライブラリを使用する場合、この制限は存在しない可能性がありますが、ドキュメント ライブラリの場合 (ケースを確認してください)、これはまさにそのケースです。

編集: アプリケーション マニフェストを変更すると内容が削除されるため、LocalState フォルダーの内容を必ずバックアップしてください。

ハッピーコーディング

于 2013-02-12T10:24:30.033 に答える
0

私の精神的なデバッグ能力は、あなたがミュージックの既知のフォルダにアクセスすること、そしてまだそれを行っていないことをあなたの機能に言及する必要があることを教えてくれます.

ここに画像の説明を入力

私は正しいですか?

于 2012-05-30T15:58:06.687 に答える