将字符串保存到xml文件(UWP)c#

时间:2016-06-18 23:37:41

标签: c# uwp

我正在尝试将字符串保存到xml文件,并收到以下错误:

类型' System.UnauthorizedAccessException'的例外情况发生在System.IO.FileSystem.dll中但未在用户代码中处理 其他信息:访问路径&c; \ users \ brandon \ documents \ visual studio 2015 \ Projects \ UniversalTestApp \ UniversalTestApp \ bin \ x86 \ Debug \ AppX \ xmlfile.xml'被拒绝。

进一步阅读该问题似乎我没有获得完成此保存的适当权限。我该怎么办

    private async void btnSubmit_Click(object sender, RoutedEventArgs e)
    {
        var bookmark = new Bookmark();
        bookmark.Button = cmbButton.SelectedIndex;
        bookmark.Name = txtName.Text;
        bookmark.URL = txtURL.Text;
        string output = SerializeToXml(bookmark);
        XmlDocument xdox = new XmlDocument();
        File.WriteAllText("xmlfile.xml",output);        
    }

2 个答案:

答案 0 :(得分:0)

事实证明,错误消息的原因是您只能在UWP中默认访问某些文件系统位置。我对我的代码做了一些修改,现在它正常工作。感谢那些试图提供帮助的人。

    private async void btnSubmit_Click(object sender, RoutedEventArgs e)
    {
        var bookmark = new Bookmark();

        StorageFolder storageFolder = ApplicationData.Current.LocalFolder;
        StorageFile createFile = await storageFolder.CreateFileAsync("bookmark.xml", CreationCollisionOption.ReplaceExisting);

        bookmark.Button = cmbButton.SelectedIndex;
        bookmark.Name = txtName.Text;
        bookmark.URL = txtURL.Text;
        var output = SerializeToXml(bookmark);

        StorageFile sampleFile = await storageFolder.GetFileAsync("bookmark.xml");
        await FileIO.WriteTextAsync(sampleFile, output);   
    }

答案 1 :(得分:-1)

尝试以“管理员”身份运行您的应用程序