簡體   English   中英

UWP - 獲取用戶下載文件夾的路徑

[英]UWP - Get path to user download folder

我一直在尋找一段時間,並沒有通過 MSDN 資源和其他資源找到太多幫助。

我的困境很簡單:我的應用程序需要一個下載文件夾的基本目錄。 我知道DownloadsFolder類,但是目前不適合我的需要。

如何在 Windows 通用應用程序中獲取當前用戶的下載文件夾路徑?

使用Windows.Storage.UserDataPaths獲取用戶下載文件夾的路徑。

string downloadsPath = UserDataPaths.GetDefault().Downloads;
  • 此方法在版本 16232 中引入,因此具有 RS3(1709) 或更高版本的客戶端將能夠運行它。
  • 您不應該使用 LocalFolder 獲取下載文件夾路徑,這可能會在用戶更改其默認位置時導致錯誤的文件夾。

那是你需要的嗎?

string localfolder = ApplicationData.Current.LocalFolder.Path;
var array = localfolder.Split('\\');
var username = array[2];
string downloads = @"C:\Users\" + username + @"\Downloads";

這將導致

C:\\用戶\\用戶名\\下載

System.Environment.ExpandEnvironmentVariables("%userprofile%/downloads/")

應用程序的DownloadsFolder現在默認為一個文件夾,其中包含以應用程序名稱命名的用戶下載目錄(實際上,應用程序名稱文件夾只是指向以Package Family Name命名的文件夾的鏈接)為了獲取文件夾名稱,我使用下面的hack(vb)首先在UWP應用程序的下載文件夾中創建一個虛擬文件,然后使用.NET代碼獲取目錄名稱,最后刪除虛擬文件。

Dim o As StorageFile = Await DownloadsFolder.CreateFileAsync("dummy.txt", CreationCollisionOption.GenerateUniqueName)
Dim dirName Ss String = Path.GetDirectoryName(o.Path)
Await o.DeleteAsync(StorageDeleteOption.PermanentDelete)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM