当前位置: 首页 > 知识库问答 >
问题:

在可移动存储设备上创建文件夹

袁何平
2023-03-14

我需要在android外部可移动存储设备上创建一个文件夹kalid。但是我的文件夹是在手机存储上创建的。我已经从教程中实现了这两个代码。

String storagestate = Environment.getExternalStorageState();

        if (storagestate.equals(Environment.MEDIA_MOUNTED)) {

            String folder_main = "Kalids";
            File f = new File(Environment.getExternalStorageDirectory(), folder_main);


            if (!f.exists()) {
                f.mkdir();
            }
        };

上面的代码在内部内存中创建kalids文件夹

String folder_main = "Kalid";

        File f = new File(Environment.getExternalStorageDirectory(), folder_main);
        if (!f.exists()) {
            f.mkdirs();
        }

我的清单如下所示

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

如何在外部存储设备中创建文件夹?

共有1个答案

李胤
2023-03-14
boolean isAvialable= false;
        boolean isPermissable= false;
        String storagestate = Environment.getExternalStorageState();

        if (storagestate.equals(Environment.MEDIA_MOUNTED)) {
            isAvialable = true;
            isPermissable = true;

            String folder_main = "kalid";
            File f = new File(Environment.getExternalStorageDirectory(), folder_main);


            if (!f.exists()) {
                f.mkdir();
            }
        } else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(storagestate)) {

            isAvialable = true;
            isPermissable = false;
        } else {

            isAvialable = isPermissable = false;
            Toast.makeText(MainActivity.this, "Read Only Media Can't Write" ,Toast.LENGTH_LONG).show();
        }

在SD卡中创建文件夹kalid。请不要忘记添加Marshmallow的运行时权限。

 类似资料:
  • 我应该为适用于IOS和Android的视频流应用程序设计/实现一个加密解决方案。我的主要加密要求是在移动设备上保持视频流加密,并防止用户在任何其他设备/程序上运行它。因此,我需要一个好的方法来在每次播放期间解密流,而不会打扰用户每次输入密码。 问题是我对密码学还是新手(对移动编程也是新手),我的初创公司没有足够的资源来聘请这方面的专家。我做了很多研究 我学到的是: 密码学会使我的流媒体变慢。我需要

  • 问题内容: 在做的选择谷歌浏览器,在那里我的文件系统做文件获取写的?在构建和调试此应用时,我想将文件放到那里并让Chrome与它们交互。 问题答案: 对我来说,至少在Mac OSX上,它们对于我来说存储在下面。如果您使用的是个人资料,则会有而不是的个人资料目录。但是,每个来源的已保存文件/文件夹都被混淆在您难以与之交互的目录下。 要调试Filesystem API,您可以选择以下几种方法: 使用此

  • 问题内容: 我的开发电话正在运行。 在我的应用程序中,我试图在外部存储上创建一个文件夹,该文件夹将存储我的应用程序的调试信息。基本上,它将包含应用程序执行的所有命令,因此,当用户遇到问题时,我可以选择使它们从debug文件夹发送信息给我进行分析。 我首先尝试将文件写入文件夹,但发现创建文件夹时出错。最初,我使用,然后又移至也不起作用。 我有我的清单。 这是用于创建文件夹的代码: 这是我也尝试过的:

  • 我相当愚蠢地上传了一个vhd到Azure文件存储,以为我可以从它创建一个虚拟机,却发现它真的需要在Blob存储中。 我知道我可以再上传一次,但它非常大,我的上传速度非常慢。 我的问题是-我可以将文件从文件存储移动到blob存储,而无需再次下载/上传吗?也就是说,Azure门户UI中是否有任何东西可以执行此操作,甚至是PowerShell命令?

  • 问题内容: 我已经与React互动了几个月了,但是遇到了一些奇怪的事情。 在移动设备上根本不会触发点击事件: http://jsbin.com/morarewelu/1/edit?html,js,输出 http://jsbin.com/morarewelu/1/-在您的设备上检查 您可以看到该点击从未触发。在iPhone上进行测试。 这是预期的行为,还是仅仅是一个错误? 问题答案: React的G

  • 我试图通过应用程序在外部存储目录中创建文件夹和文件。 这总是成功的,isCreated为true,没有任何异常或警告,并且创建了文件夹。 Environment.getExternalStorageDirectory()也返回"/存储/仿真/0"。 但当我尝试在外部存储卡(可移动存储卡)中创建文件夹时,如下所示: 始终f.mkdir()返回false,并且未创建文件夹。同时我可以看到W/Syste