我在我的应用中使用了这段代码。
所有设备都 OKAY 吗?它适用于所有设备吗?
String path= "/sdcard/.beta1/data/text/myfile.txt";
File myFile = new File(path);
myFile.getParentFile().mkdirs();
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile);
我也试过Environment.getExternalStorageDirectory().getPath();
,但我很困惑哪一个更好更稳定?
答案 0 :(得分:2)
所有设备都可以吗?它能在所有设备上运行吗?
没有。它不仅不适用于所有设备,而且不适用于所有设备的所有用户。大多数Android设备支持多个用户;不同的用户将拥有internal storage和external storage的不同路径。 永远没有硬编码路径。
使用getExternalCacheDir()
,getExternalFilesDir()
,Environment.getExternalStoragePublicDirectory()
或Environment.getExternalStorageDirectory()
处理外部存储上的文件。前两个的优点是不需要API级别19及更高级别的任何权限。
答案 1 :(得分:1)
阅读文件:
final File file = new File(Environment.getExternalStorageDirectory()
.getAbsolutePath(), filename);
filename
它是String
变量
或者您也可以使用:
File sdCardDirectory = new File(Environment.getExternalStorageDirectory() + File.separator + "MyFolder/" + "MyFile.txt");