我想在SD卡上创建一个目录,将其保存为我的某个应用程序中的单独活动。我在应用程序的onCreate()中编写了以下代码。它不是创建目录,虽然这个代码工作正常,如果我尝试将其实现为一个独立的应用程序。 请为此问题提出解决方案。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
try{
String dirName = "/sdcard/TEST";
File newFile = new File(dirName);
newFile.mkdirs();
Log.d("CaptureTest.java","Directory created");
if(newFile.exists()){
Log.d("capturetest.java","directory exists");
if(newFile.isDirectory()){
Log.d("capturetest.java","isDirectory = true");
}
else Log.d("capturetest.java","isDirectory = false");
} else
{
Log.d("capturetest.java","directory doesn't exist");
}
} catch(Exception e){
Log.d("capturetest.java","Exception creating folder " + e);
}
........................................
..........................................
}
答案 0 :(得分:4)
SD卡可能会安装在/mnt/sdcard
而不是/sdcard
。
但获取外部存储目录最安全的技术如下面的代码
File myDirectory = new File(Environment.getExternalStorageDirectory(), "my directory");
if(!myDirectory.exists()) {
myDirectory.mkdirs();
}
答案 1 :(得分:0)
可能有很多原因造成这种情况:
This page有一些非常有用的提示,可以正确访问SD卡。