【问题标题】:Folder created inside Internal Storage not showing up在内部存储中创建的文件夹未显示
【发布时间】:2018-07-12 06:04:02
【问题描述】:

我试图在单击按钮时在内部存储中创建一个文件夹,但我不知道为什么它不起作用。

backUp.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View view) {

        File sub = new File(MainActivity.this.getFilesDir(), "new_folder");
        if (!sub.exists()){
            sub.mkdirs();
            Toast.makeText(getApplicationContext(), "Sucess!!",
                        Toast.LENGTH_LONG).show();
        }

    }
});

看起来不错,显示成功 toast 但看不到目录中的文件夹。甚至尝试刷新目录:

  MediaScannerConnection.scanFile(MainActivity.this, new String[] {sub.toString()}, null, null);

还在 Menifest 中提供了 WRITE_INTERNAL_STORAGE 权限。

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

【问题讨论】:

  • 您是否在清单中设置了写入内部存储的权限?
  • @K.Dexter 是的。我忘了提问题,但我也给了 WRITE_EXTERNAL_STORAGE 权限

标签: android android-file


【解决方案1】:

您需要权限,在 AndroidManifest.xml

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

按钮点击Context.MODE_PRIVATE被使用

 File mydir = context.getDir("users", Context.MODE_PRIVATE); //Creating an internal dir;
    if (!mydir.exists())
    {
         mydir.mkdirs();
    } 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    • 2015-02-24
    • 1970-01-01
    • 1970-01-01
    • 2021-04-03
    • 1970-01-01
    相关资源
    最近更新 更多