[英]How to get all sub folders and its files - UWP
我在桌面上有一個名為student_names的固定文件夾。 它包含子文件夾,每個子文件夾均包含其文件。 現在,我要將這些子文件夾及其對應的文件名存儲在數組列表中。 這怎么可能?
如果用戶未明確提供對該文件夾的訪問權限(至少一次),UWP應用程序將無法直接訪問該文件夾(應用程序文件夾除外)。
因此,為了始終能夠讀取/寫入特定文件夾,您需要首先要求用戶選擇特定文件夾。 一旦用戶選擇了一個文件夾,您就可以將其保存到FutureAccessList
,它將為您提供令牌以直接訪問該文件夾(無需用戶干預)以備將來使用。
var picker = new FolderPicker();
picker.FileTypeFilter.Add("*");
var folder = await picker.PickSingleFolderAsync();
//add selected folder to FutureAccessList
StorageApplicationPermissions.FutureAccessList.AddOrReplace("futureAccessToken", folder);
從下次啟動(或您實現的任何邏輯)開始,您可以訪問該文件夾並列出其內容
var folder = await StorageApplicationPermissions.FutureAccessList.
GetFolderAsync("futureAccessToken");
IReadOnlyList<StorageFile> fileList = await folder.GetFilesAsync();
因此,您只需要提供對父文件夾(在您的情況下為Student_names)的訪問權限,便可以訪問其子文件夾和文件。
希望這可以幫助..
不幸的是,這可能是不可能的。 自從我上次使用UWP應用程序以來已經有一段時間了,但是如果您的應用程序無法訪問幾個指定文件夾(例如,應用程序文件夾和其他一些特殊文件夾,如Document,Music,Picture等)之外的文件系統,聲明適當的權限)。 通常,您不能訪問Desktop上的文件夾或C:\\文件夾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.