创建 XML 文件时出现 UnauthorizedAccessException
UnauthorizedAccessException when creating XML file
我正在开发 Windows 8.1 XAML/C# Metro 应用程序。
目前,我在尝试保存 XML 文档时遇到授权错误。这是 运行 抛出的方法:
public async void saveXML(string fileName)
{
Windows.Storage.StorageFolder sf = await Windows.ApplicationModel.Package.Current.InstalledLocation.CreateFolderAsync("XML");
StorageFile st = await sf.CreateFileAsync(fileName);
await SyncXMLDoc.SaveToFileAsync(st);
}
具体错误如下:
- $例外{"Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"} System.Exception {System.UnauthorizedAccessException}
我该如何解决这个问题?为什么不允许我创建 XML 文件?
您不能将文件写入应用程序的安装目录。来自 MSDN 上的 File access and permissions 文章:
The app's install directory is a read-only location.
您必须将文件保存到应用程序数据文件夹之一,该文章中也有说明。
我正在开发 Windows 8.1 XAML/C# Metro 应用程序。
目前,我在尝试保存 XML 文档时遇到授权错误。这是 运行 抛出的方法:
public async void saveXML(string fileName)
{
Windows.Storage.StorageFolder sf = await Windows.ApplicationModel.Package.Current.InstalledLocation.CreateFolderAsync("XML");
StorageFile st = await sf.CreateFileAsync(fileName);
await SyncXMLDoc.SaveToFileAsync(st);
}
具体错误如下:
- $例外{"Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"} System.Exception {System.UnauthorizedAccessException}
我该如何解决这个问题?为什么不允许我创建 XML 文件?
您不能将文件写入应用程序的安装目录。来自 MSDN 上的 File access and permissions 文章:
The app's install directory is a read-only location.
您必须将文件保存到应用程序数据文件夹之一,该文章中也有说明。