【发布时间】:2011-08-26 11:41:34
【问题描述】:
我和我的朋友正在尝试创建一个将文件保存到设备的应用程序。我们使用此代码写入外部 SD 卡,它在他的 Droid X 和三星 Galaxy Tab 上运行良好。
获取 SD 卡的路径:
private static final File ROOT = Environment.getExternalStorageDirectory();
创建文件夹路径和文件:
FileWriter fw = new FileWriter(ROOT + "/test/" + "time_frames.txt");
我们正在使用文档工厂来创建文档
所以你可以看到我们创建了路径然后尝试保存到刚刚创建的路径
File file = new File(ROOT + "/test/" + "time_frames.txt");
当我在我的 Nexus S(没有 SD 卡)上运行它时,我遇到了完全相同的代码问题。
private static final File ROOTtest = Environment.getExternalStorageDirectory();
这会返回 /data
private static final File ROOT = Environment.getRootDirectory();
这会返回 /mnt/sdcard
private static final File intData = Environment.getDataDirectory();
这会返回 /system
我的问题是,其中哪一个适用于有 SD 卡和没有 SD 卡的设备?我已经尝试了很多,但是尝试所有这些东西真的让我很困惑。提前致谢
【问题讨论】:
-
MORE 我认为它不起作用的原因是由于某种原因我们没有正确调用 Nexus S 上的存储。这就是我尝试不同位置的原因。