zac*_*ach 1 android android-sdcard
我的朋友和我正在尝试创建一个将文件保存到设备的应用程序.我们使用此代码写入外部SD卡,它在他的Droid X和三星Galaxy Tab上运行良好.
获取SD卡的路径:
private static final File ROOT = Environment.getExternalStorageDirectory();
Run Code Online (Sandbox Code Playgroud)
创建文件夹路径和文件:
FileWriter fw = new FileWriter(ROOT + "/test/" + "time_frames.txt");
Run Code Online (Sandbox Code Playgroud)
我们正在使用文档工厂来创建文档
所以你可以看到我们创建路径然后尝试保存到刚刚创建的路径
File file = new File(ROOT + "/test/" + "time_frames.txt");
Run Code Online (Sandbox Code Playgroud)
当我在我的Nexus S(没有SD卡)上运行它时,使用完全相同的代码时遇到问题.
private static final File ROOTtest = Environment.getExternalStorageDirectory();
Run Code Online (Sandbox Code Playgroud)
这返回/数据
private static final File ROOT = Environment.getRootDirectory();
Run Code Online (Sandbox Code Playgroud)
这会返回/ mnt/sdcard
private static final File intData = Environment.getDataDirectory();
Run Code Online (Sandbox Code Playgroud)
这返回/系统
我的问题是哪一个适用于具有SD卡且没有SD卡的设备?我已经尝试了很多,但尝试所有这些东西真的让我很困惑.提前致谢
Environment.getExternalStorageDirectory()返回外部存储的路径,它应该适用于所有设备.他们是否有实际的SD卡并不重要,您的代码也不应该关心.在尝试使用外部存储之前,您需要确保它是可用的,因为它可以随时卸载.
| 归档时间: |
|
| 查看次数: |
3158 次 |
| 最近记录: |