在 Android 中,getExternalCacheDir()
方法用于獲取應用的外部緩存目錄。這個目錄通常用于存儲應用的臨時文件和緩存。要與存儲結合使用,你可以按照以下步驟操作:
File externalCacheDir = getExternalCacheDir();
String path = externalCacheDir.getAbsolutePath();
Environment.getExternalStorageDirectory()
獲取應用的外部存儲目錄。這將返回一個 File
對象,表示應用的外部存儲空間。File externalStorageDir = Environment.getExternalStorageDirectory();
String path = externalStorageDir.getAbsolutePath();
// 創建一個文件對象,表示外部存儲目錄中的緩存文件
File cacheFile = new File(externalStorageDir, "my_cache_file.txt");
// 將數據寫入緩存文件
try (FileOutputStream fos = new FileOutputStream(cacheFile)) {
fos.write("This is a cached file.".getBytes());
} catch (IOException e) {
e.printStackTrace();
}
File.separator
獲取系統的文件分隔符,然后構建文件的完整路徑。// 使用文件分隔符構建文件的完整路徑
String fullPath = externalCacheDir.getAbsolutePath() + File.separator + "my_cache_file.txt";
// 讀取緩存文件的內容
try (FileInputStream fis = new FileInputStream(fullPath)) {
byte[] data = new byte[(int) cacheFile.length()];
fis.read(data);
String content = new String(data, StandardCharsets.UTF_8);
Log.d("Cached File", content);
} catch (IOException e) {
e.printStackTrace();
}
請注意,從 Android 10(API 級別 29)開始,對外部存儲的訪問受到限制。為了在這些新版本上正確訪問外部存儲,你需要使用分區存儲模型(Scoped Storage)或 MediaStore API。