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