我需要在 Windows 10 上的 UWA 下载文件夹中创建一个文件,并将现有文件的内容复制到其中。我使用以下代码:
StorageFile cleanFile = await Windows.Storage.DownloadsFolder.CreateFileAsync(cleanFileName);
await file.CopyAndReplaceAsync(cleanFile);
这工作正常,但存储文件的文件夹是这样的:
C:\Users\MyUser\Downloads\e15e6523-22b7-4188-9ccf-8a93789aa8ef_t8q2xprhyg9dt!App\WordComment-clean.docx
我认为这是某种类型的隔离存储。但实际上,这不是我需要的。因为用户看不到这样的文件。
来自 MSDN:
用户的下载文件夹。默认保存下载文件的文件夹。
默认情况下,您的应用程序只能访问您的应用程序创建的用户下载文件夹中的文件和文件夹。但是,您可以通过调用文件选择器来访问用户的“下载”文件夹中的文件和文件夹(FileOpenPicker 或FolderPicker),以便用户可以导航并选择您的应用程序要访问的文件或文件夹。
如果您不使用文件选择器,则会将该文件保存在“下载”中的应用程序文件夹中。
Souce https://msdn.microsoft.com/en-us/windows/uwp/files/file-access-permissions
使用下载文件夹
为了使用下载文件夹,用户需要手动选择下载文件夹。
FolderPicker picker = new FolderPicker { SuggestedStartLocation = PickerLocationId.Downloads };
picker.FileTypeFilter.Add("*");
StorageFolder folder = await picker.PickSingleFolderAsync();
if (folder != null) {
await folder.CreateFileAsync("Hello1.txt");
}
我希望这可以帮助你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)