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

从文件路径获取根目录(即外部或外部sdcard)

从文件路径获取根目录(即外部或外部SD卡)是指通过给定的文件路径,确定该文件所在的存储设备的根目录路径。以下是完善且全面的答案:

概念:

根目录是指存储设备的最顶层目录,它是文件系统中的起始点。在Android系统中,根目录可以是内部存储器(Internal Storage)或外部SD卡(External Storage)。

分类:

根目录可以分为内部存储器根目录和外部SD卡根目录。

优势:

  • 确定根目录路径可以帮助开发人员在应用程序中正确定位文件的存储位置。
  • 可以根据根目录路径来判断文件存储设备的类型,从而进行相应的读写操作。

应用场景:

  • 文件管理器应用:根据文件路径获取根目录可以帮助用户快速定位文件所在的存储设备。
  • 多媒体应用:根据文件路径获取根目录可以帮助应用程序正确加载和播放媒体文件。

推荐的腾讯云相关产品和产品介绍链接地址:

腾讯云提供了丰富的云计算服务和解决方案,以下是一些与文件存储相关的产品和服务:

  1. 对象存储(COS):腾讯云对象存储(COS)是一种高可用、高可靠、弹性伸缩的云端存储服务,适用于存储和处理任意类型的文件、图片、音视频等数据。详情请参考:腾讯云对象存储(COS)
  2. 云硬盘(CBS):腾讯云云硬盘(CBS)是一种高性能、可扩展的块存储设备,适用于云服务器、容器服务等场景。详情请参考:腾讯云云硬盘(CBS)
  3. 文件存储(CFS):腾讯云文件存储(CFS)是一种高性能、可扩展的共享文件存储服务,适用于大规模文件共享和并发访问场景。详情请参考:腾讯云文件存储(CFS)

注意:以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求进行评估和决策。

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

相关·内容

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

在存储文件时,为了保证有充足的存储空间大小,通常需要知道系统内部或者sdcard的剩余存储空间大小,这里就需要用到StatFs类。 1....进行文件读写时: 在AndroidManifest.xml中加入访问SDCard的权限如下: <!...() 获取到下载的缓存目录 3:getExternalStorageDirectory()     获取外部存储的目录 一般指SDcard 4:getExternalStorageState()          ...获取外部设置的当前状态 一般指SDcard, android系统中对于外部设置的状态,比较常用的是 MEDIA_MOUNTED(SDcard存在且可以进行读写) MEDIA_MOUNTED_READ_ONLY...5:getRootDirectory()                   获取到Android Root路径 6:isExternalStorageEmulated()    返回Boolean值判断外部设置是否有效

3K50

Android文件存储使用

一般地,通过 Context 和 Environment 相关的方法获取文件存取的路径。...各个路径的特性 下面介绍这些路径的特性以及使用中需要注意的细节: 根目录( $rootDir ): 内部存储路径: /data , 通过 Environment.getDataDirectory...() 获取 外部存储路径: /storage/sdcard0 (也有类似 /mnt/ 这样的),通过 Environment.getExternalStorageDirectory() 获取 示例...* 在外部存储中,这两个文件夹其他应用程序也可访问。 * 在外部存储中, $filesDir 中的媒体文件,不会被当做媒体扫描出来,加到媒体库中。 4....特别注意, 对于外部存储,获取 $cacheDir 或者 $filesDir 及其下的路径 * 在API level 8 以下,或者空间不足,相关的方法获路径为空时,需要自己构造。

2.3K30

你真的知道APP缓存目录的内幕吗

在Android手机里面,存储的位置分为两类,一类是Internal Storage,内部存储,另外一类是External Storage,外部存储。...APP内部存储的文件路径为/data/data/pacgage_name/files getCacheDir() 通过此方法可以获取到你的APP内部存储的文件路径为/data/data/package_name...2.外部存储 2.1 私有存储 Context.getExternalCacheDir() Context.getExternalFilesDir() 创建的私有文件的地址是/sdcard/Android...这个方法不是Context的方法,而是Environment的两个方法,第一个方法获取到的其实是外部存储的根目录,而第二个方法获取到得则是外部存储的公共目录。...而缓存是程序运行时的临时存储空间,它可以存放网络下载的临时图片,用户的角度出发清除缓存对用户并没有太大的影响,但是清除缓存后用户再次使用该APP时,由于本地缓存已经被清理,所有的数据需要重新网络上获取

1.8K40

Android外部存储

Context.getExternalFilesDirs() 接口,可以获取应用在主外部存储和其他二级外部存储下的files路径 ● 引入存储访问框架(SAF,Storage Access Framework...该路径的owner和group一般为media_rw,这样保证只有sdcard程序root进程能够访问该目录。 [4.png] ● sdcard守护进程启动后,打开/dev/fuse设备。...[7.png] 经过上面一系列步骤,sdcard进程在/mnt/sdcard路径上创建了一个FUSE文件系统,所有对/mnt/sdcard将转为事件由sdcard守护进程处理,并对应到/data/media...[12.png] ● 获取外部存储相关的环境变量。EXTERNAL_STORAGE环境变量是旧版本沿袭下来的环境变量,记录了外部存储的传统路径。...EMULATED_STORAGE_TARGET记录绑定挂载的目标路径,应用获取外部存储路径就在这个目录下。 [13.png] ● 准备挂载路径并进行绑定挂载。

2.2K60

Android外部存储

Context.getExternalFilesDirs() 接口,可以获取应用在主外部存储和其他二级外部存储下的files路径 ● 引入存储访问框架(SAF,Storage Access Framework...该路径的owner和group一般为media_rw,这样保证只有sdcard程序root进程能够访问该目录。 ? ● sdcard守护进程启动后,打开/dev/fuse设备。 ?...经过上面一系列步骤,sdcard进程在/mnt/sdcard路径上创建了一个FUSE文件系统,所有对/mnt/sdcard将转为事件由sdcard守护进程处理,并对应到/data/media目录。...● 获取外部存储相关的环境变量。EXTERNAL_STORAGE环境变量是旧版本沿袭下来的环境变量,记录了外部存储的传统路径。...EMULATED_STORAGE_TARGET记录绑定挂载的目标路径,应用获取外部存储路径就在这个目录下。 ? ● 准备挂载路径并进行绑定挂载。

80330

Android-文件存储目录

说明: 归类存放公有文件 如果type不为null的话在外部私有目录下创建返回一个名为type的文件夹,为null直接返回外部私有根目录。...说明: 可存放共享媒体文件 这个是在Android 5.0加入的api,创建和获取位于/sdcard/Android/media目录下的应用目录,该目录下的文件能够被其他应用访问和被MediaStore...公有目录 公有目录里面的文件是可以被自由访问,文件的数据对其他应用或者用户来说都是可以访问的,当应用被卸载之后,其卸载前创建的文件仍然保留。...对于公有目录上面的文件路径需要通过Environment获取 3.1 getExternalStorageDirectory() //SD卡外部存储路径 String externalStoragePath...5.2清除缓存 缓存是程序运行时的临时存储空间,它可以存放网络下载的临时图片,用户的角度出发清除缓存对用户并没有太大的影响,但是清除缓存后用户再次使用该APP时,由于本地缓存已经被清理,所有的数据需要重新网络上获取

3.4K20

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

知识点: 内部存储空间获取总大小和可用大小; sdcard存储空间获取总大小和可用大小; 新名词记录{StatFs:描述文件系统信息的类} 概览 在开发中,我们或多或少都会用到存储空间进行存储数据。...移动设备上可以有两种的存储方式:手机内部空间和sdcard外部空间。对于要使用存储空间,要使用哪一个?如何判断是否有足够的空间?sdcard是否挂载?等等诸多问题就来了。...对于sdcard,这个是用户外部选择性的进行存储空间扩展的,事实上不一定会有sdcard。...() { //获取内部存储根目录 File path = Environment.getDataDirectory(); //系统的空间描述类 StatFs stat =...SDCard根目录 File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs

6.1K10

好好管理你应用的文件夹,别再乱用了

2.2 Context Context是应用的上下文,它用来获取与应用相关的文件目录,可以获取应用私有和应用公有目录,常用的api有(后面是所对应的路径): 1....用户对app进行数据清理卸载可以清理外部存储和内部存储下的所有文件目录。 3.2 内部存储 内部存储的文件夹其他应用和用户无法直接访问,可以用于存放敏感数据。...这个是在Android 5.0加入的api,创建和获取位于/sdcard/Android/media目录下的应用目录,该目录下的文件能够被其他应用访问和被MediaStore查询和获取。...getExternalStorageDirectory() 获取外部存储(SD卡)的根目录。使用getExternalStoragePublicDirectory(String)进行替代即可。...4 结尾 最后说一下几个重要的事: 获取文件路径这件事永远不能写死某个路径,不存在SD卡怎么办呢?某个路径无法使用了怎么办呢?所以管理文件的时候必须要有存储策略。

1.3K10

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

,getApplicationContext().getCacheDir().getAbsolutePath()) (2 )外部存储(External Storage) 外部存储一般是指SDCard,...外部存储中的文件是可以被用户或者其他应用程序修改的,外部存储中的目录实际上也分为两种: -公共文件(目录) 文件是可以被自由访问,且文件的数据对其他应用或者用户来说都是由 意义的,当应用被卸载之后,其卸载前创建的文件仍然保留...Environment.getExternalStorageDirectory() SD卡的根目录路径:/storage/emulated/0 Log.e(TAG, Environment.getExternalStorageDirectory...().getAbsolutePath()); -私有文件 由于是外部存储的原因即使是这种类型的文件也能被其他程序访问,只不过一个应用私有的文件对其他应用其实是没有访问价值的(恶意程序除外)。...外部存储上,应用私有文件的价值在于卸载之后,这些文件也会被删除。类似于内部存储。

6.1K10

笔记——安卓存储知识(十)

通过context.getCacheDir()、context.getFilesDir()等不带External字段获取文件路径,如:/data/data/com.fivefloor.bo.myview...storagemnt文件夹即为外部存储区,外部存储中的文件是可以被用户或者其他应用程序修改的,有两种类型的文件(或者目录): >1.公共文件Public files:文件是可以被自由访问,且文件的数据对其他应用或者用户来说都是有意义的...:/storage/sdcard1或者/storage/sdcard2 mnt/ext_sdcard,有些手机可以扩展多张TF卡。...用户角度来说SD卡有内置SD卡和外置TF卡之分,通过Environment或者Context获取的都是手机自带的内置SD卡路径,类似storage/emulated/0/加后缀。...sdw.png /** * 获取外置TF卡路径/storage/sdcard1//storage/0F1C-240A/等 * * @param mContext * @return

68630

Android开发中使用外部应用获取SD卡状态的方法

本文实例讲述了Android开发中使用外部应用获取SD卡状态的方法。...MEDIA_CHECKING:表明对象正在磁盘检查 MEDIA_MOUNTED:表明sd对象是存在并具有读/写权限 MEDIA_MOUNTED_READ_ONLY:表明对象权限为只读 MEDIA_NOFS:表明对象为空白正在使用不受支持的文件系统...SDCard 不可被安装 如果 SDCard 是存在但不可以被安装 MEDIA_UNMOUNTED:返回 SDCard 已卸掉如果 SDCard 是存在但是没有被安装 如: public void...sd卡状态,不需要对其监听,可以用方法Environment.getExternalStorageState()获得当前sd卡状态 外部应用获取SD卡状态 像是android4.0以后,外部应用就无法通过...通过env 获取SD卡路径 String externalStorage = System.getenv("SECONDARY_STORAGE"); ​2.

1.5K20

Android文件系统整理

总揽 Android文件系统大的方面分为以下几类: 1、内部存储 2、外部存储 3、SharedPreferences 4、数据库 PS:SharedPreferences和数据库我们在另外的篇幅中详细介绍...内部存储空间可以通过 Context.getFileDir() Context.getCacheDir() 获取到,主要路径是: Context.getFileDir() 获取路径为: - data...Environment.getRootDirectory() // 获取用户数据目录的路径 Environment.getDataDirectory() // 获取用户缓存目录的路径 Environment.getDownloadCacheDirectory...2、清除缓存 缓存是程序运行时的临时存储空间,它可以存放网络下载的临时图片,用户的角度出发清除缓存对用户并没有太大的影响,但是清除缓存后用户再次使用该APP时,由于本地缓存已经被清理,所有的数据需要重新网络上获取...除 /Android/data/、/sdcard/Android 和 /sdcard/Android 的大多数子目录外,对所有内部存储目录⁠的写入权限。

76630

浅谈android中的目录结构

4格式,再用链接命令,把这个分区映射成一个系统文件夹system/sd,把所有的软件装到这个“文件夹”下,这就是App2sd功能的操作过程。.../mnt 目录,熟悉linux的人都清楚,linux默认挂载外部设备都会挂到这个目录下面去,如将sd卡挂载上去后,会生成一个/mnt/sdcard 目录。.../sdcard 目录,这是一个软链接(相当于windows的文件夹的快捷方式),链接到/mnt/sdcard 目录,这个目录的内容就是sdcard的内容。...也就是说,在/mnt路径下看到的/mnt/asec目录和/mnt/secure目录并不是真正存在在手机内存或者sd卡的分区挂载目录,它们只是/mnt/sdcard/.android_secure目录的一个影像而已...在Linux文件系统中,有一种特别的文件叫“软链接”,类似于Windows下的快捷方式,软链接可以把一个文件或者文件夹映射到别的地方,一个例子如上面介绍的/sdcard 就是/mnt/sdcard 的软链接

1.8K100

【专业技术】Android数据保存之文件保存

比如你需要保存网络获取的图片到本地作为缓存数据,并且数量比较大,SharedPreferences就不能满足你的需求了,这个时候就要用到基本上所有平台都会用到的文件保存。...获取外部存储权限: 要想在外部存储上存储文件首先要获取外部存储读写权限,权限的声明都是在AndroidManifest.xml文件中,代码如下: <uses-permissionandroid...当你想要在内部存储写入一个文件时,首先要创建一个文件,可以通过File的构造器,传入上面两个方法获取路径作为参数,很方便的就能创建一个文件,例如: File file =newFile(context.getFilesDir...,可以通过调用Context.java中的: public abstract File getExternalFilesDir (String type) 方法获取外部存储路径路径是: /mnt/sdcard...Log.e(LOG_TAG,"Directory not created"); } return file; } 如果type中没有你需要的类型,你可以输入null,此时返回的是你的应用程序外部存储目录的私有目录的根目录

2.1K60

笔记(十)——安卓存储知识

storagemnt文件夹即为外部存储区,外部存储中的文件是可以被用户或者其他应用程序修改的,有两种类型的文件(或者目录): >1.公共文件Public files:文件是可以被自由访问,且文件的数据对其他应用或者用户来说都是有意义的...:/storage/sdcard1或者/storage/sdcard2 mnt/ext_sdcard,有些手机还可以扩展多张TF卡。...用户角度来说SD卡有内置SD卡和外置TF卡之分,通过Environment或者Context获取的都是手机自带的内置SD卡路径,类似storage/emulated/0/加后缀。...image /** * 获取外置TF卡路径/storage/sdcard1//storage/0F1C-240A/等 * * @param mContext * @return */...当创建SQLiteOpenHelper实例时,如果已经存在旧数据库(就数据库版本号存在)就会走onUpgrade方法而不会调用onCreate,这时可以添加表字段添加新表等操作升级数据库。

1.2K31
领券