文档介绍:Android 课程讲义
Android智能手机开发
5、数据存取
Android智能手机开发
数据存取
Android有四种方式:
SharePreference
轻量级键-值方式存储,以XML文件方式保存。
文件
.*库所提供有I/O接口,读写文件。
SQLit数据库
SQLite是轻量级嵌入式内置数据库。
ContentProvider
ContentProvider可为数据封装,为多个应用共享。
1、SharedPreferences
创建
以键值<String Key,String Value> 方式加入数据
以 String Key 为索引来取出数据
清除
SharedPreferences settings
= ("Demo", MODE_PRIVATE);
editor = ();
("name", “value”);
mit();
String str = ("name", "");
().commit();
XML文件名
SharedPreferences
存入XML后的内容
目录:/data/data/<包>/shared_prefs/***.xml
XML文件名
2、文件存取
文件用来存储大数量的数据
.*库所提供有I/O接口,读写文件。
只有本地文件可以被访问
优点:可以存储大容量的数据
缺点:文件更新或是格式改变可能会导致巨大的编程工作
文件操作(读)
读文件
(String name)打开一个与应用程序联系的私有文件输入流
当文件不存在时抛出FileNotFoundException 异常
FileInputStream in = (“");//打开文件“"
……
();//关闭输入流
文件操作(写)
写文件
(String name,int mode)开启一个与应用程序联系的私有文件输出流
当文件不存在时该文件将被创建
文件输出流可以在添加模式中打开,这意味新的数据将被添加到文件的末尾
FileOutputStream out = (“",MODE_APPEND);
//打开文件“"进行写操作、使用MODE_APPEND 在添加模式中打开文件
……
();//关闭输出流
读取静态文件
要打开打包在应用程序中的静态文件,()
该文件必须放在文件夹res/raw/中
InputStream in = ().openRawResource();
…//获得Context资源
(); //关闭输入流
把文件存放在SDCard
访问SDCard,需要申请访问SDCard的权限。:
<!-- 在SDCard中创建与删除文件权限-->
<uses-permission android:name=""/>
<!-- 往SDCard写入数据权限-->
<uses-permission android:name=""/>