5

我想将文件下载到Downloads文件夹并阅读。它是一个根文件夹,如照片和视频。

Windows.Storage.DownloadsFolder不适用于电话,我不KnownFolders喜欢它Windows.Storage.KnownFolders.PicturesLibrary;

我也试过C:\Data\Users\Public\Downloads\它给出了未经授权的结果。

我看到一些应用程序可以访问它,但是如何?

4

2 回答 2

7

您可以使用文件或文件夹选择器。我不确定您是否希望用户选择一个文件,或者您是否想自己选择一个文件,但我认为实现这一目标的最佳方法是使用类似的东西:

FileOpenPicker openPicker = new FileOpenPicker();
openPicker.SuggestedStartLocation = PickerLocationId.Downloads;
StorageFile file = await openPicker.PickSingleFileAsync();

或者

FolderPicker folderPicker = new FolderPicker();
folderPicker.SuggestedStartLocation = PickerLocationId.Downloads;
folderPicker.PickFolderAndContinue();
于 2014-04-28T13:31:24.017 回答
2

要完成前面的答案,可以访问这样的文件夹,但只有在第一次通过 FolderPicker 访问它之后。

诀窍是使用 StorageApplicationPermissions.FutureAccessList。这是文件浏览器应用程序所做的。它将为您提供一个令牌,您可以将其保存在您的独立存储中,以便您以后可以直接访问下载文件夹,这要归功于该令牌。

有关 StorageApplicationPermissions.mostRecentlyUsedList 的演练,请参见那里:http: //msdn.microsoft.com/library/windows/apps/hh972603,但其原理与 FutureAccessList 完全相同。

于 2014-12-15T11:11:42.160 回答