我正在尝试使用以下代码从我的 WinRT 设备获取文件列表:
var 文件夹 = KnownFolders.DocumentsLibrary;
var items = await folder.GetItemsAsync();
这将返回文件夹和文件的列表。问题是文件列表仅包含我已添加到 Package.appxmanifest 的扩展名的文件
有没有办法检索所有文件?喜欢 * 。* ?
我正在尝试使用以下代码从我的 WinRT 设备获取文件列表:
var 文件夹 = KnownFolders.DocumentsLibrary;
var items = await folder.GetItemsAsync();
这将返回文件夹和文件的列表。问题是文件列表仅包含我已添加到 Package.appxmanifest 的扩展名的文件
有没有办法检索所有文件?喜欢 * 。* ?
我认为没有直接的方法可以做到这一点。根据这篇文章,它可以用图片、音乐和视频库来完成,但不能用文档库来完成
您必须将文件类型关联添加到您的应用清单,以声明您的应用可以在此位置访问的特定文件类型。
如果您让用户选择带有 的文件夹FolderPicker
,您将可以访问所有项目,但是:
var picker = new FolderPicker();
picker.FileTypeFilter.Add(".txt");
var folder = await picker.PickSingleFolderAsync();
var items = await folder.GetItemsAsync();
用户只需执行一次就足够了。然后,您可以将文件夹添加到FutureAccessList
并存储它返回的令牌:
var token = StorageApplicationPermissions.FutureAccessList.Add(folder);
当用户下次运行应用程序时,您可以使用令牌再次访问该文件夹:
folder = await StorageApplicationPermissions.FutureAccessList.GetFolderAsync(token);
var items = await folder.GetItemsAsync();