Android不会在我的Nexus上创建文件夹

时间:2016-04-08 11:42:39

标签: android file

我有 Nexus 9设备。我会在/ sdcard / path中创建一个个人文件夹,如下所示:

/sdcard/MyFolder/

所以我编码了这个:

File directory = new File("/sdcard/MyFolder/");
    if(directory.mkdirs()){
        Toast.makeText(context, "Folder created", Toast.LENGTH_SHORT).show();
    }else{
        Toast.makeText(context, "Folder not created", Toast.LENGTH_SHORT).show();
    }

当我启动应用程序时,它会显示“未创建文件夹”,因此它不会将名为MyFolder的文件夹创建到/ sdcard / path中。在Nexus 9设备中,/storage/emulated/0路径不存在,因此我必须使用/ sdcard / path来访问我的存储。

我还在AndroidManifest.xml文件中使用了权限,这样:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

你能告诉我,这有什么不对吗? 感谢

2 个答案:

答案 0 :(得分:4)

由于许多设备具有不同的文件结构,因此使用Environment.getExternalStorageDirectory()来确定SD卡路径更安全。

你能试试这段代码吗?

File folder = new File(Environment.getExternalStorageDirectory() + "/MyFolder");
if (!folder.exists()) {
    folder.mkdir();
}

答案 1 :(得分:0)

尝试指定外部存储,如下所示:

File directory = new File(Environment.getExternalStorageDirectory().toString()+"/MyFolder");