对于UWP,可以轻松地将应用程序本地文件夹中的所有文件作为:
IReadOnlyList<StorageFile> files = await ApplicationData.Current.LocalFolder.GetFilesAsync();
您现在可以迭代文件列表,甚至可以获得有关各个文件的更多信息。
我想为app文件夹添加类似的all-file-getter,例如,考虑存储app *。png 文件的 / Assets 文件夹。 具有已知名称的单个文件没有问题;我可以很容易地将它称为:
StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///Assets/StoreLogo.png"))
因此,我的问题是,在app文件夹中获取所有文件是否类似,例如 / Assets 文件夹?从逻辑上讲,它应该类似StorageFile.GetFilesFromApplicationFolderUriAsync(new Uri(@"ms-appx:///Assets"))
,但如果存在上面显示的LocalFolder的等价物,则不知道。
答案 0 :(得分:38)
您可以使用Package.InstalledLocation访问安装文件夹。因此,您的代码可能如下所示:
StorageFolder appInstalledFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
StorageFolder assets = await appInstalledFolder.GetFolderAsync("Assets");
var files = await assets.GetFilesAsync();
答案 1 :(得分:0)
var storageFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync("Assets");
var files = await storageFolder.GetFilesAsync();
https://docs.microsoft.com/en-us/uwp/api/windows.storage.applicationdata