Windows Phone 8.1 XAML / Universal App 是否有更好的方法如何获取所有文件的总大小,包括特定StorageFolder中的嵌套文件,而不是递归遍历所有文件夹并手动计算所有文件的大小?
适用于Windows 8.1(平板电脑/ PC)的解决方案是使用CommonFileQuery返回特定文件夹中的所有嵌套文件。
StorageFileQueryResult filesQuery = downloads.CreateFileQuery(CommonFileQuery.OrderByName);
IReadOnlyList<StorageFile> files = await filesQuery.GetFilesAsync();
然后您可以轻松地汇总所有文件的大小。不幸的是,Windows Phone 8.1上没有可用的Query方法,可以在任何文件夹中运行并返回文件夹的深层文件列表。
更新,刚刚在Lumia 520上测试并获得了包含4个子文件夹的文件夹大小,每个子文件使用此方法需要1150毫秒,这太多了!