android 获取读写权限设置,Android 数据存储、访问权限以及获取系统路径

本文详细介绍了在Android中如何设置文件读写权限,包括使用MODE操作模式、获取系统路径的方法如Environment.getExternalStoragePublicDirectory(),以及如何在SD卡上进行文件的读写操作。同时讲解了不同类型的公共目录,如DIRECTORY_MUSIC、DIRECTORY_PICTURES等,并提供了读取和写入文件的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.设置文件的读写权限

Int MODE的文件操作模式

413fd8d50bd7

Paste_Image.png

2.文件的相关操作方法

413fd8d50bd7

Paste_Image.png

2.1几个比较常用的获取系统路径

无需向用户申请

413fd8d50bd7

需要向用户申请

413fd8d50bd7

这里讲解一下Environment.getExternalStoragePublicDirectory(String type)的用法

如果您需要往sdcard中保存特定类型的内容,可以考虑使用Environment.getExternalStoragePublicDirectory(String type)函数,该函数可以返回特定类型的目录,目前支持如下类型:

DIRECTORY_ALARMS //警报的铃声

DIRECTORY_DCIM //相机拍摄的图片和视频保存的位置

DIRECTORY_DOWNLOADS //下载文件保存的位置

DIRECTORY_MOVIES //电影保存的位置, 比如 通过google play下载的电影

DIRECTORY_MUSIC //音乐保存的位置

DIRECTORY_NOTIFICATIONS //通知音保存的位置

DIRECTORY_PICTURES //下载的图片保存的位置

DIRECTORY_PODCASTS //用于保存podcast(博客)的音频文件

DIRECTORY_RINGTONES //保存铃声的位置

对应的路径

413fd8d50bd7

image.png

2.2写入文件和读取文件

写入文件

FileOutputStream fos=content.openFileOutput(String filename,Int mode);

fos.wirte(String content.getBytes());

fos.close;

读取文件

FileInputStream fis=content.openFileInput(String filename);

BufferedReader br=new BufferedReader(InputStreamReader(fis));

string content=br.readline();

3.读取SD卡上的文件

413fd8d50bd7

Paste_Image.png

这里读写数据用如下

FileOutputStream output = new FileOutputStream(filename);

output.write(filecontent.getBytes());

//将String字符串以字节流的形式写入到输出流中

output.close();

StringBuilder sb = new StringBuilder("");

FileInoutStream fis=new FileInputStream(filename);

int len=0;

byte[]bytes=new byte[1024];

while((len=fis.read(bytes)=)!=-1){

sb.append(new String(temp, 0, len))

}

这里不能再用openFileInput,那个是往手机内存中读写数据的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值