【问题标题】:Create folder failed when root isroot 时创建文件夹失败
【发布时间】:2017-11-17 09:40:47
【问题描述】:

感谢其他人的帮助,我现在可以创建文件夹成功了。

但是如果android模拟器没有sdcard,我会遇到一个奇怪的问题,我无法创建文件夹。

我想不通..

这是我的代码:

try {
            if (Environment.getExternalStorageState()
                    .equals(Environment.MEDIA_MOUNTED)) {
                System.out.println("can be read and write");
                File sdFile = android.os.Environment.getExternalStorageDirectory();
                //String path = sdFile.getPath() + File.separator + "DestPdf";
                String path = sdFile.getPath() + "/DestPdf";
                File dirFile = new File(path);

                if (!dirFile.exists()) {// if folder doesn't exist
                    System.out.println("create file");
                    dirFile.mkdirs();// create file
                    System.out.println(dirFile.toString());
                }
            }
        } catch (Exception ex) {
            ex.toString();
        }

如果我的安卓模拟器有sdcard root,我可以创建文件夹DestPdf 如果没有sdcard,我打印root是/storage/emulated/0/DestPdf,我创建文件夹失败,文件夹emulated什么都没有...

任何帮助将不胜感激。提前致谢。

【问题讨论】:

  • dirFile.mkdirs();半小时前我建议您将其更改为if(!dirFile.mkdirs()){Toast(..... could not create directory...); return;} 。您应该检查返回值并进行相应处理! stackoverflow.com/questions/47346490/…

标签: android


【解决方案1】:

您可以使用您的应用程序内部包文件夹来保存数据,

 context.getFilesDir().getPath()

上下文在这里是Activity实例。好吗?

去做吧..

【讨论】:

  • 太棒了!现在可以创建了。虽然它会在我的 apk 下创建。非常感谢。
  • 非常感谢您
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-22
  • 1970-01-01
  • 1970-01-01
  • 2018-11-22
  • 2011-02-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多