本文实例讲述了Android数据持久化之I/O操作。分享给大家供大家参考,具体如下:

前面文章里我们简单的介绍了File的操作,这一节来说说使用android平台自带对象实现文件的基本操作
主要的两个类:openFileOutput(写)和openFileInput(读)
向文件中写如数据代码如下:
//向文件写入内容
try {
OutputStream os = openFileOutput("file-io.txt", Context.MODE_PRIVATE);
String str = "向文件中写入数据";
os.write(str.getBytes("utf-8"));
os.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
读取文中的代码如下:
//读取文件中的内容
try {
InputStream is = openFileInput("file-io.txt");
byte[] buffer = new byte[100];
int byteLength = is.read(buffer);
String str2 = new String(buffer, 0, byteLength, "utf-8");
text.setText(str2.toString());
is.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
从上面的代码中可以看出:openFileOutput / openFileInput 的用法与之前的SharedPreferences 的用法有很大的相似性,下面简单说一下两者的异同:
SharedPreferences对象的创建:
SharedPreferences sp = getSharedPreferences("file",Contex.MODE_PRIVATE);
getSharedPreferences方法的第一个参数是指定要保存在手机内存中的文件名(不包括扩展名,扩展名为xml),第二个参数是表示SharedPreferences对象在创建XML文件时设置的文件属性;
Context.MODE_PRIVATE = 0 (默认),代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容
Context.MODE_APPEND = 32768
Context.MODE_WORLD_READABLE = 1
Context.MODE_WORLD_WRITEABLE = 2
openFileOutput 方法是如何返回一个OutputStream对象的:
OutputStream os = openFileOutput("file.xml",Contex.MODE_PRIVATE);
openFileOutput 的第一个参数指定的文件名带有扩展名,第二个参数与getSharedPreferences的是一样的;从这两个方法来看,第一个参数只制定了文件名,并未包含文件的路径,因此,这两个方法只能将文件保存在手机的内存中固定的路径,对于大文件可能内存不够:
SharedPreferences 将XML 文件保存在:/data/data/<包名>/shared_prefs
openFileOutput 将文件保存在:/data/data/<包名>/files
Activity还提供了getCacheDir()和getFilesDir()方法:
getCacheDir()方法用于获取:/data/data/<package name>/cache 目录
getFilesDir()方法用于获取:/data/data/<package name>/files 目录。
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android文件操作技巧汇总》、《Android数据库操作技巧总结》、《Android编程之activity操作技巧总结》、《Android编程开发之SD卡操作方法汇总》、《Android开发入门与进阶教程》、《Android资源操作技巧汇总》、《Android视图View技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
# Android
# 数据持久化
# I/O操作
# Android数据持久化之ContentProvider机制详解
# Android数据持久化之读写SD卡中内容的方法详解
# Android数据持久化之File机制分析
# Android数据持久化之Preferences机制详解
# 详解Android开发数据持久化之文件存储(附源码)
# Android仿QQ好友列表分组实现增删改及持久化
# Android持久化技术之SharedPreferences存储实例详解
# Android持久化技术之文件的读取与写入实例详解
# Android SQLite数据库增删改查操作的使用详解
# Android开发之SQLite的使用方法
# Android使用SQLite数据库的简单实例
# Android数据持久化之SQLite数据库用法分析
# 第一个
# 操作技巧
# 这两个
# 第二个
# 扩展名
# 进阶
# 相关内容
# 感兴趣
# 给大家
# 可以看出
# 自带
# 能将
# 更多关于
# 不包括
# 所述
# 该文件
# 程序设计
# 操作方法
# 编程开发
# 大文件
相关文章:
建站之星代理如何优化在线客服效率?
自助网站制作软件,个人如何自助建网站?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
北京专业网站制作设计师招聘,北京白云观官方网站?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
建站中国官网:模板定制+SEO优化+建站流程一站式指南
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
深入理解Android中的xmlns:tools属性
武清网站制作公司,天津武清个人营业执照注销查询系统网站?
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
招商网站制作流程,网站招商广告语?
如何快速上传自定义模板至建站之星?
PHP 500报错的快速解决方法
建站主机无法访问?如何排查域名与服务器问题
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
建站主机服务器选型指南与性能优化方案解析
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
建站主机系统SEO优化与智能配置核心关键词操作指南
网站制作公司,橙子建站是合法的吗?
如何注册花生壳免费域名并搭建个人网站?
建站三合一如何选?哪家性价比更高?
番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?
C#如何序列化对象为XML XmlSerializer用法
西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?
如何登录建站主机?访问步骤全解析
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
在线制作视频的网站有哪些,电脑如何制作视频短片?
实惠建站价格推荐:2025年高性价比自助建站套餐解析
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
如何通过西部建站助手安装IIS服务器?
小建面朝正北,A点实际方位是否存在偏差?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
制作网页的网站有哪些,电脑上怎么做网页?
h5网站制作工具有哪些,h5页面制作工具有哪些?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
Swift中swift中的switch 语句
如何在IIS7中新建站点?详细步骤解析
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
Java解压缩zip - 解压缩多个文件或文件夹实例
如何通过NAT技术实现内网高效建站?
网站制作软件有哪些,制图软件有哪些?
如何选择域名并搭建高效网站?
网站制作模板下载什么软件,ppt模板免费下载网站?
建站主机是否等同于虚拟主机?
ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。