首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从SDCARD ANDROID 6.0.1获取目录路径

,可以通过以下步骤实现:

  1. 首先,需要获取SD卡的状态,判断SD卡是否可用。可以使用Environment类的getExternalStorageState()方法来获取SD卡的状态,返回的结果可以是Environment.MEDIA_MOUNTED(SD卡已挂载)或者Environment.MEDIA_MOUNTED_READ_ONLY(SD卡只读)。
  2. 如果SD卡已挂载,可以使用Environment类的getExternalStorageDirectory()方法来获取SD卡的根目录路径。该方法返回的是一个File对象,可以通过调用其getAbsolutePath()方法获取路径字符串。
  3. 如果需要获取SD卡中的特定目录路径,可以使用File类的相关方法进行操作。例如,可以使用File类的listFiles()方法获取SD卡根目录下的所有文件和目录,然后遍历找到目标目录。

以下是一个示例代码:

代码语言:txt
复制
import android.os.Environment;
import java.io.File;

public class MainActivity extends AppCompatActivity {
    private String sdCardPath;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
            File sdCardDir = Environment.getExternalStorageDirectory();
            sdCardPath = sdCardDir.getAbsolutePath();
        } else {
            // SD卡不可用的处理逻辑
        }

        // 获取SD卡中的目标目录路径
        String targetDirPath = getTargetDirPath(sdCardPath, "目标目录名称");
        // 使用目标目录路径进行后续操作
    }

    private String getTargetDirPath(String rootDirPath, String targetDirName) {
        File rootDir = new File(rootDirPath);
        File[] files = rootDir.listFiles();
        if (files != null) {
            for (File file : files) {
                if (file.isDirectory() && file.getName().equals(targetDirName)) {
                    return file.getAbsolutePath();
                }
            }
        }
        return null; // 目标目录不存在的处理逻辑
    }
}

在上述示例代码中,首先判断SD卡的状态,然后获取SD卡的根目录路径。接着,可以调用getTargetDirPath()方法来获取SD卡中的目标目录路径,该方法会遍历SD卡根目录下的所有文件和目录,找到目标目录并返回其路径。

请注意,上述代码仅为示例,实际应用中可能需要进行错误处理、权限检查等其他操作。此外,具体的目录结构和目标目录名称需要根据实际情况进行调整。

关于腾讯云相关产品和产品介绍链接地址,由于要求不能提及具体品牌商,无法提供相关链接。但腾讯云提供了丰富的云计算服务,您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android获取内置sdcard跟外置sdcard路径

Android获取内置sdcard跟外置sdcard路径 Android获取内置sdcard跟外置sdcard路径....(测试过两个手机,亲测可用) 1.先得到外置sdcard路径,这个接口是系统提供的标准接口. 2.得到上一级文件夹目录 3.得到该目录的所有文件夹,根据判断得到内置sdcard跟外置sdcard。...4.程序运行的时候记得给程序添加读取sdcard的权限哦. /** * 得到sdcard路径 * @return 返回一个字符串数组 下标0:内置sdcard 下标1:外置sdcard...{//外置 sdCardPath[1]=sdFile.getAbsolutePath(); }else if(file.getAbsolutePath().contains("sdcard...")){//得到内置sdcard sdCardPath[0]=file.getAbsolutePath(); } } return sdCardPath; } 如有疑问请留言或者到本站社区交流讨论

2K31

Android 6.0上sdcard和U盘路径获取和区分方法

Android6.0上会根据卡的种类和卡的挂载状态来动态生成挂载路径,所以之前写固定路径的办法不可用,最后通过网上查找和分析android源码,通过反射获取路径,并且进行了正确区分,代码如下: /**...* 6.0获取外置sdcard和U盘路径,并区分 * @param mContext * @param keyword SD = "内部存储"; EXT = "SD卡"; USB = "U...storageVolumeClazz = null; try { storageVolumeClazz = Class.forName("android.os.storage.StorageVolume...还是U盘,内卡的label固定,但是sdcard和U盘的label是根据种类,状态等信息等动态生成,所以这里“if(userLabel.contains(keyword)){”没有用equals。...总结:不懂看源码 以上这篇Android 6.0上sdcard和U盘路径获取和区分方法就是小编分享给大家的全部内容了,希望能给大家一个参考。

1.2K10
  • Android:StatFs类 获取系统sdcard存储空间信息

    -- 在SDCard中创建与删除文件权限 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"...SDcard进行读写的时候 会用到Environment类下面的几个静态方法: 1:getDataDirectory() 获取Android中的data数据目录 2:getDownloadCacheDirectory...() 获取到下载的缓存目录 3:getExternalStorageDirectory()     获取到外部存储的目录 一般指SDcard 4:getExternalStorageState()          ...获取外部设置的当前状态 一般指SDcard, android系统中对于外部设置的状态,比较常用的是 MEDIA_MOUNTED(SDcard存在且可以进行读写) MEDIA_MOUNTED_READ_ONLY...5:getRootDirectory()                   获取Android Root路径 6:isExternalStorageEmulated()    返回Boolean值判断外部设置是否有效

    3.1K50

    浅谈android获取存储目录(路径)的几种方式和注意事项

    通常, 我们创建文件/目录, 或者存储图片什么的, 我们都需要拿到手机的存储路径, 现在我们就来看一下获取手机存储路径的几种方式(作为工具类方法调用即可): 第一种: 获取 /storage/emulated...", Toast.LENGTH_SHORT).show(); //} } } 以上两种获得的路径, 其实就是系统的根目录, 比如我的手机是华为荣耀6, 就在本地- 内部存储这个路径下 第三种: 获取手机指定目录...注意:我怀疑 必须先知道该手机是否存在这个目录才能获取 因为不能保证每个手机自带目录都同样 所以使用前最好查看手机是否具有该路径 public File getAlbumStorageDir(String...", Toast.LENGTH_SHORT).show(); } return file; } 最后, 需要注意的是, 如果我们获取的最终路径是String类型的, 那么, 现在有个需求: 在aaaa...File类型的即可 以上这篇浅谈android获取存储目录(路径)的几种方式和注意事项就是小编分享给大家的全部内容了,希望能给大家一个参考。

    1.6K10

    Android获取手机内部及sdcard存储空间的方法

    知识点: 内部存储空间获取总大小和可用大小; sdcard存储空间获取总大小和可用大小; 新名词记录{StatFs:描述文件系统信息的类} 概览 在开发中,我们或多或少都会用到存储空间进行存储数据。...尤其是在现在Android移动设备厂商提供的内部存储空间越来越大,起步的已经都是32G了,更大的可以去到128G,所以用户可能就不需要再进行sdcard的扩展了。...() { //获取内部存储根目录 File path = Environment.getDataDirectory(); //系统的空间描述类 StatFs stat =...SDCard目录 File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs...这篇Android获取手机内部及sdcard存储空间的方法就是小编分享给大家的全部内容了,希望能给大家一个参考。

    6.6K10

    Android打开手机相册获取图片路径

    本文实例为大家分享了Android打开手机相册获取图片路径的具体代码,供大家参考,具体内容如下 根据打开相机返回的Uri uri = data.getData();获取该相片的真正SD卡路径!...获取真正路径 package com.example.richeditortest; import android.annotation.SuppressLint; import android.content.ContentUris...{ /** * 根据Uri获取图片的绝对路径 * * @param context 上下文对象 * @param uri 图片的Uri * @return 如果Uri对应的图片存在, 那么返回该图片的绝对路径...{ // api < 19 return getRealPathFromUriBelowAPI19(context, uri); } } /** * 适配api19以下(不包括api19),根据uri获取图片的绝对路径...filePath = uri.getPath(); } return filePath; } /** * 获取数据库表中的 _data 列,即返回Uri对应的文件路径 * * @return */ private

    4.5K30

    Android 获取系统各个目录的方法

    Android开发过程中,我们经常会对文件系统进行操作——存放、释放我们应用的数据。Android系统中提供了各种功能的文件目录,每个目录都有相应的特点和功能。...,getApplicationContext().getCacheDir().getAbsolutePath()) (2 )外部存储(External Storage) 外部存储一般是指SDCard,...Environment.getExternalStorageDirectory() SD卡的根目录路径:/storage/emulated/0 Log.e(TAG, Environment.getExternalStorageDirectory...getApplicationContext().getExternalFilesDir(“”) 路径:/storage/emulated/0/Android/data/应用包名/files Log.e...getAbsolutePath()); 扩展:getExternalCacheDir是手机中设置 → 应用 → 具体应用详情→ 清除缓存的操作对象 以上这篇Android 获取系统各个目录的方法就是小编分享给大家的全部内容了

    6.3K10

    Android逆向之手机环境配置

    这里我以nexus 5 android 6.0.1为例,其他Google系手机型号及刷其他Android版本系统都是类似的);第二个则是安装Android逆向分析hook框架(Xposed、frida)...https://developer.android.com/studio/ 下载Android 6.0.1刷机包,可以在下面链接下载,如下所示 https://developers.google.com...6.0.1) 需要刷机的nexus 5手机连接到电脑上,并确认已经设置为允许usb调试 确认platform-tools目录已经设置为PATH环境变量,使用adb devices命令进行测试(不会提示不是内部或外部命令...系统镜像,如下图所示 进入解压后的目录,执行flash-all.bat批处理文件开始刷Android6.0.1系统,等待最后刷完成功即可,如下所示 如果在执行flash-all.bat出现Snapshot...或者/sdcard/Download中(这是用来root系统的。

    1.8K20

    IOS中获取各种文件的目录路径的方法

    获取这些目录路径的方法: 1,获取目录路径的函数: NSString *homeDir = NSHomeDirectory(); 2,获取Documents目录路径的方法: NSArray *paths..., YES); NSString *cachesDir = [paths objectAtIndex:0]; 4,获取tmp目录路径的方法: NSString *tmpDir = NSTemporaryDirectory...(); 5,获取应用程序程序包中资源文件路径的方法: 例如获取程序包中一个图片资源(apple.png)路径的方法: NSString *imagePath = [[NSBundle mainBundle...iphone沙盒(sandbox)中的几个目录获取方式: [cpp] view plain copy // 获取沙盒主目录路径   NSString *homeDir =..., NSUserDomainMask, YES);   NSString *docDir = [paths objectAtIndex:0];   // 获取Caches目录路径   NSArray *

    5.7K20

    shell获取当前工作目录绝对路径

    一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本或者远程调用某个脚本时,可能使用相对路径更加灵活一点,因为你不知道用户会在哪个目录执行你的程序...,于是问题就来了,如何获取当前正在执行脚本的绝对路径?...常见的一种误区,是使用 pwd 命令,该命令的作用是“print name of current/working directory”,这才是此命令的真实含义,当前的工作目录,这里没有任何意思说明,这个目录就是脚本存放的目录...,使用$0开始的特殊变量引用(跟路径无关了) 除此以外,$0会被设置成调用bash的那个文件的名字(没说是绝对路径) 简单介绍一下获取方法如下: #!...cd  dirname $0 ,进入这个目录(切换当前工作目录) pwd,显示当前工作目录(cd执行后的) 我今天遇到一个问题就是: 需要压缩备份一个目录下的所有的文件,其实代码就2行: 我还是贴全部的吧

    11.7K70

    Android如何通过URI获取文件路径示例代码

    前言 最近在工作的过程中,遇到不同 Android 版本下 URI 采用不同方式来获取文件路径的问题。...因为需求的原因,要求拍照上传或者相册中选择图片上传,而且图片是需要经过压缩的,大小不能超过2M。 很快,拍照的这部分就搞定了。那么相册中选择图片的也是一样的道理,应该也是轻松解决了。...最关键的来了,如果通过 URI 来获取文件呢? 比如,现在 URI 为 content://media/extenral/images/media/17766 ,而我们需要得到对应的文件路径。...因为在 Android 4.4 及以上的手机上,获取到的 URI 变成了 content://com.android.providers.media.documents/document/image%3A235700...这是因为在 Android 4.4 及以上的机型,使用了 DocumentUri 来代表获取到文件的 URI 。 所以我们又要对于 DocumentUri 进行适配。

    4K00

    获取Android应用专属缓存存储目录的实例

    ,如图片等文件存储在SD卡对应的目录下 应用的内存缓存目录只有应用本身能对其进行读写操作,外部应用不行,如相机应用 (内存目录读写权限:rwxr-x–x,SD卡缓存目录读写权限:rwxrwx—) 即使是通过自定义路径得到的上述目录...,在系统版本大于等于4.4时也不需要申请SD卡读写权限 API使用及方法封装 /** * 获取应用专属缓存目录 * android 4.4及以上系统不需要申请SD卡读写权限 * 因此也不用考虑6.0系统动态申请...or sdCard mount fail !")...; } return appCacheDir; } /** * 获取内存缓存目录 * @param type 子目录,可以为空,为空直接返回一级目录 * @return 缓存目录文件夹 或 null(创建目录文件失败...; } return appCacheDir; } 以上这篇获取Android应用专属缓存存储目录的实例就是小编分享给大家的全部内容了,希望能给大家一个参考。

    2.5K30

    tp5、tp5.1 获取项目根目录路径常量

    5.0和5.1的获取方式是不一样的 常量调整 5.1取消了所有的框架内置常量(不影响应用代码中的自定义常量),如需获取,请使用think\facade\App类的内置方法以及think\facade...\Env类获取, 下面给出的是5.0和5.1的常量对照表: 5.0常量 5.1获取方法 EXT 取消,固定使用 .php IS_WIN 取消 IS_CLI 取消 DS 使用PHP自带 DIRECTORY_SEPARATOR...‘temp/’ MODULE_PATH Env::get(‘module_path’) 通过Env类的get方法获取路径变量的时候不区分大小写,例如下面的写法是等效的: Env::get(‘root_path...’); Env::get(‘ROOT_PATH’); 备注:使用前要先引入这个类 think\facade\Env 未经允许不得转载:肥猫博客 » tp5、tp5.1 获取项目根目录路径常量

    1.6K20
    领券