getExternalFilesDir()
是 Android 中的一个方法,它用于获取应用的外部文件目录的路径。这个目录是应用专用的,其他应用无法访问。它通常用于存储用户生成的内容,如图片、音频、视频等。这个目录有以下特点:
- 应用专用:只有创建它的应用才能访问这个目录。其他应用无法访问或修改这个目录中的文件。
- 持久化:即使应用被卸载,这个目录中的文件仍然会保留。但是,如果你清除应用的缓存和数据,这个目录中的文件也会被删除。
- 可读写:应用可以对这个目录进行读写操作。
使用 getExternalFilesDir()
方法的一般步骤如下:
- 获取外部文件目录的路径:
File externalFilesDir = getExternalFilesDir(null);
- 创建文件或目录:可以使用
File
类的相关方法在外部文件目录中创建文件或目录。 - 读取和写入文件:可以使用 Java 的输入输出流(如
FileInputStream
和FileOutputStream
)来读取和写入这个目录中的文件。 - 删除文件或目录:可以使用
File
类的delete()
方法来删除这个目录中的文件或目录。
示例代码:
// 获取外部文件目录的路径 File externalFilesDir = getExternalFilesDir(null); // 在外部文件目录中创建一个名为 "example.txt" 的文件 File exampleFile = new File(externalFilesDir, "example.txt"); try { FileOutputStream fos = new FileOutputStream(exampleFile); fos.write("Hello, World!".getBytes()); fos.close(); } catch (IOException e) { e.printStackTrace(); } // 读取 "example.txt" 文件的内容 FileInputStream fis = new FileInputStream(exampleFile); byte[] buffer = new byte[fis.available()]; fis.read(buffer); fis.close(); String content = new String(buffer, StandardCharsets.UTF_8); System.out.println(content); // 删除 "example.txt" 文件 exampleFile.delete();