Xamarin Essentials教程獲取路徑檔案系統FileSystem

大學霸發表於2018-09-13

Xamarin Essentials教程獲取路徑檔案系統FileSystem

檔案系統用於管理裝置內的各類檔案。透過檔案系統,應用程式可以建立永久檔案和臨時檔案,也可以獲取預先打包的檔案,如預設資料庫檔案。 Xamarin.Essentials 的靜態類 FileSystem 提供訪問檔案系統的部分功能,如獲取應用程式目錄、快取資料目錄等。本節將講解該類的使用。

獲取路徑

在資料讀寫中,常用的應用程式目錄有兩個,分別為快取目錄和資料目錄。快取目錄用來儲存快取資料。相對臨時資料,快取資料具有更長的生命週期,但不能被當前操作所使用。資料目錄用來儲存應用程式自身資料,非使用者資料檔案。這些檔案會被裝置自帶備份功能進行備份。

FileSystem 類中,開發者可以使用 CacheDirectory 屬性來獲取應用程式快取目錄,其語法形式如下:

public static string CacheDirectory { get; }

FileSystem 類的 AppDataDirectory 屬性可以用來獲取應用程式的資料目錄,其語法形式如下:

public static string AppDataDirectory { get; }

【示例 1-2 】下面獲取應用程式的快取目錄和資料目錄。程式碼如下:

void FileSystem_Directory()
{
    //獲取並輸出快取目錄
    var cacheDir = FileSystem.CacheDirectory;
Console.WriteLine("CacheDirectory={0}", cacheDir);
//獲取並輸出資料目錄
    var mainDir = FileSystem.AppDataDirectory;
    Console.WriteLine("AppDataDirectory={0}", mainDir);
}

執行程式,會輸出以下的內容。

CacheDirectory=/data/user/0/com.companyname.FileSystemFormsDemo/cache
ppDataDirectory=/data/user/0/com.companyname.FileSystemFormsDemo/files

注意:由於平臺的差異性,獲取的目錄也會有所不同。

Android 使用 CacheDirectory 屬性,返回 CacheDir 的絕對路徑。使用 AppDataDirectory 屬性,會返回 FilesDir 的絕對路徑。從 API 23 開始,該目錄會被 Auto Backup 進行備份。

iOS 使用 CacheDirectory 屬性,返回庫 / 快取的目錄。使用 AppDataDirectory 屬性,會返回庫目錄。該目錄會被 iTunes iCloud 進行備份。

UWP 使用 CacheDirectory 屬性,返回應用程式本地快取 目錄。 使用 AppDataDirectory 屬性,會返回應用程式目錄。該目錄會被備份到雲。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2214097/,如需轉載,請註明出處,否則將追究法律責任。

相關文章