android 获取文件、存储卡路径,和路径的填写的多种方式及4.1版本前后注意点

2023-12-24 07:18

本文主要是介绍android 获取文件、存储卡路径,和路径的填写的多种方式及4.1版本前后注意点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

利用Uri对文件操作请移步。。。

如何获取文件路径请移步。。。

本文做的仅仅是介绍的是在android中路径的填写格式,以及他们所到达的地点,至于怎样去读写操作请移步。。。。。

我们获取sd卡的路径是用的是File类,File有文件和文件夹的意思,而sd卡是存储卡,他们又有什么关系呢?

楼主的理解是一大块物理内存是一块死物,必须在其上面覆盖一层文件系统才可以共我们去操作,文件系统将物理磁盘进行(划分)分区,

既然是文件系统,那么划分的分区就是文件或文件夹啦,所以每一个分区就是一个有内存大小的大文件夹。他们都有一个根目录(“/”),所

有的分区都在这个根目录下,由这个根目录向下延伸,既然每一个分区是一个大文件夹,那么就有路径名字等等参数,那么当然可以用File来

获取路径、名子等等啦。

这儿我们得先区分一下android4.1以前的版本和以后的版本外部存储在根目录下的挂载点,请移步。。


我们要在代码中填写路径要怎么填写呢。以下是几种方式(这里我们以android4.2为例,不同的版本可能会有所不同,但殊途同归)。

Environment.getExternalStorageDirectory();相信这句代码大家都不陌生,他是获取外部存储路径的,

但有时或返回的为 “mounted”,即安装好的、可用的,但有时候确是“remove”,移除的、不可用的。

原因是什么呢,是因为手机厂商的不同,所以外置sd卡和内置sd卡挂载的路径问题。

有的手机用这个方法获取到的是内置sd卡的挂载路径,即将内置sd卡挂载在Environment.getExternalStorageDirectory()这个节点上,所以无论怎样都返回“mounted”,

而有的手机用这个方法获取的是外置sd卡的挂载路径,即将外置sd卡挂载在Environment.getExternalStorageDirectory()这个节点上,所以如果你没装外置sd卡就会放回“remove”,而且不同版本,不同厂商挂载点的路径会有差别,具体请移步,这儿确实有吐槽点,那这个问题怎么解决呢,就算用这个方法获取了一个sd卡的路径,那另一个怎么获取呢。

至于怎么获取,借花献佛 http://blog.fidroid.com/post/android/ru-he-zheng-que-huo-de-androidnei-wai-sdqia-lu-jing。

路径的填写格式:有下面2种版本1.直接调挂载路径即Environment.getExternalStorageDirectory();这样得到sd卡路径,然后向下延伸。

                                                           2.“/sdcard”(sd卡路径),然后向下延伸,其实调的是软连接(快捷方式),然后沿着此快捷方式向下延伸。

总结起来的话就是两种,通过获取sd卡在android系统上的挂载点来获取sd卡的路径,第二种就是掉挂载点的软链接啦,都可调用成功。另外还可能有其他乱七八糟

的填写方式,但殊途同归,这里就先不写啦,遇到再说。


这篇关于android 获取文件、存储卡路径,和路径的填写的多种方式及4.1版本前后注意点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/530977

相关文章

Spring Boot 处理带文件表单的方式汇总

《SpringBoot处理带文件表单的方式汇总》本文详细介绍了六种处理文件上传的方式,包括@RequestParam、@RequestPart、@ModelAttribute、@ModelAttr... 目录方式 1:@RequestParam接收文件后端代码前端代码特点方式 2:@RequestPart接

Springboot配置文件相关语法及读取方式详解

《Springboot配置文件相关语法及读取方式详解》本文主要介绍了SpringBoot中的两种配置文件形式,即.properties文件和.yml/.yaml文件,详细讲解了这两种文件的语法和读取方... 目录配置文件的形式语法1、key-value形式2、数组形式读取方式1、通过@value注解2、通过

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

C#如何在Excel文档中获取分页信息

《C#如何在Excel文档中获取分页信息》在日常工作中,我们经常需要处理大量的Excel数据,本文将深入探讨如何利用Spire.XLSfor.NET,高效准确地获取Excel文档中的分页信息,包括水平... 目录理解Excel中的分页机制借助 Spire.XLS for .NET 获取分页信息为什么选择 S

java中4种API参数传递方式统一说明

《java中4种API参数传递方式统一说明》在Java中,我们可以使用不同的方式来传递参数给方法或函数,:本文主要介绍java中4种API参数传递方式的相关资料,文中通过代码介绍的非常详细,需要的... 目录1. 概述2. 参数传递方式分类2.1 Query Parameters(查询参数)2.2 Path

Nginx 访问控制的多种方法

《Nginx访问控制的多种方法》本文系统介绍了Nginx实现Web访问控制的多种方法,包括IP黑白名单、路径/方法/参数控制、HTTP基本认证、防盗链机制、客户端证书校验、限速限流、地理位置控制等基... 目录一、IP 白名单与黑名单1. 允许/拒绝指定IP2. 全局黑名单二、基于路径、方法、参数的访问控制

springboot3.x使用@NacosValue无法获取配置信息的解决过程

《springboot3.x使用@NacosValue无法获取配置信息的解决过程》在SpringBoot3.x中升级Nacos依赖后,使用@NacosValue无法动态获取配置,通过引入SpringC... 目录一、python问题描述二、解决方案总结一、问题描述springboot从2android.x

MybatisPlus中几种条件构造器运用方式

《MybatisPlus中几种条件构造器运用方式》QueryWrapper是Mybatis-Plus提供的一个用于构建SQL查询条件的工具类,提供了各种方法如eq、ne、gt、ge、lt、le、lik... 目录版本介绍QueryWrapperLambdaQueryWrapperUpdateWrapperL

idea设置快捷键风格方式

《idea设置快捷键风格方式》在IntelliJIDEA中设置快捷键风格,打开IDEA,进入设置页面,选择Keymap,从Keymaps下拉列表中选择或复制想要的快捷键风格,点击Apply和OK即可使... 目录idea设www.chinasem.cn置快捷键风格按照以下步骤进行总结idea设置快捷键pyth

Linux镜像文件制作方式

《Linux镜像文件制作方式》本文介绍了Linux镜像文件制作的过程,包括确定磁盘空间布局、制作空白镜像文件、分区与格式化、复制引导分区和其他分区... 目录1.确定磁盘空间布局2.制作空白镜像文件3.分区与格式化1) 分区2) 格式化4.复制引导分区5.复制其它分区1) 挂载2) 复制bootfs分区3)