安卓文件存储/文件读写操作

栏目: IOS · Android · 发布时间: 7年前

内容简介:安卓存储位置通常有两大类,一类是用户随意指定,这个需要配置权限,高版本安卓中还需要用代码获得权限,这种存储在 APP 卸载后,不会随之删除。另一类存储是存储在特定的位置,并不需要在 AndroidManifest.xml 中配置权限,在 APP 卸载后,或者用户清除该 APP 的数据后,这些存储文件都会被删除。本文讲的第二类。

安卓存储位置通常有两大类,一类是用户随意指定,这个需要配置权限,高版本安卓中还需要用代码获得权限,这种存储在 APP 卸载后,不会随之删除。

另一类存储是存储在特定的位置,并不需要在 AndroidManifest.xml 中配置权限,在 APP 卸载后,或者用户清除该 APP 的数据后,这些存储文件都会被删除。

本文讲的第二类。

一、如何获得这类目录的路径

使用 getFilesDir()、getCacheDir(),以 getFilesDir() 为例,这个目录是类似:/data/data/com.itpow.test/files

二、读取这个目录下有哪些文件

示例,选取以 itpow 开头的文件。

File file = new File(getFilesDir().getPath());
File[] fs = file.listFiles(new FileFilter() {
	@Override
	public boolean accept(File pathname) {
		if (pathname.getName().startsWith("itpow")) {
			return true;
		}
		else {
			return false;
		}
	}
});

三、读取某一文件的内容

使用FileInputStream,注意,Input 是读。

try {
	FileInputStream fis = openFileInput(f.getName());
	byte[] buffer = new byte[fis.available()];
	fis.read(buffer);
	String s = new String(buffer);
	fis.close();
} catch (FileNotFoundException e) {
	e.printStackTrace();
} catch (IOException e) {
	e.printStackTrace();
}

四、写入某一文件

使用FileOutputStream,注意 Output 是写。

try {
	FileOutputStream fos = openFileOutput(filePath, MODE_PRIVATE);
	fos.write(s);
	fos.close();
} catch (FileNotFoundException e) {
	result = false;
	e.printStackTrace();
} catch (IOException e) {
	result = false;
	e.printStackTrace();
}

五、删除文件

File f = new File(getFilesDir().getPath() + "/" + fileName);
f.delete();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

图解密码技术(第3版)

图解密码技术(第3版)

[日] 结城浩 / 周自恒 / 人民邮电出版社 / 2016-6 / 89.00元

本书以图配文的形式,详细讲解了6种最重要的密码技术:对称密码、公钥密码、单向散列函数、消息认证码、数字签名和伪随机数生成器。 第1部分讲述了密码技术的历史沿革、对称密码、分组密码模式(包括ECB、CBC、CFB、OFB、CTR)、公钥、混合密码系统。第2部分重点介绍了认证方面的内容,涉及单向散列函数、消息认证码、数字签名、证书等。第3部分讲述了密钥、随机数、PGP、SSL/TLS 以及密码技......一起来看看 《图解密码技术(第3版)》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

URL 编码/解码
URL 编码/解码

URL 编码/解码