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