【第一行代码-Android】学习(一)及在studio的迁移(5)存储数据
来源:互联网 发布:什么是程序员 编辑:程序博客网 时间:2024/06/16 06:43
1、文件存储
核心:Context类的openFileInput()和openFileOutput(),Java流进行读写操作。
不适合于保存一些较为复杂的文本数据。
a)写入:
OpenFileOutput有两个参数,其一为文件名,但不能包含路径,默认存储在/data/data/<package name>/files/目录下,且不能随便访问。
其二为文件的操作模式,MODE_PRIVATE为默认模式,表示指定相同文件名时,会从头写入,覆盖之前的内容;MODE_APPEND表示如果存在文件就在文件里追加内容,不存在就创建新文件。
比如
b)读出:
openFileInput只有一个参数,即文件名,系统会在默认路径下去寻找。
比如
2、SharedPreferences存储
核心:键值对的方式存储
a)写入:
1)获取SharedPreferences对象(1) →
2)调用对象(1)的edit()方法获取一个SharedPreferences.Editor对象(2) →
3)按数据类型向对象2中添加数据,比如字符串用put-String,布尔型用put-Boolean方法 →
4)调用commit方法提交数据
其中,获取Share的Preference岁对象有三种方法
1)Context类中的get-shared-preferences()
a) 第一个参数接受文件名,第二个参数接受操作模式
i. 文件默认存放在/data/data/<package name>/shared_prefs/目录下
ii. 模式MODE_PRIVATE默认,表示只有当前程序能对该文件读写;MODE_MULTI_PROCESS表示可以多进程对同一文件进行读写
2)Activity类中的get-Preferences()
与a类似,但只接受一个参数。文件名会自动激活为当前类名。
3)Preference-Manager类的get-Default-Shared-Preferences()
静态方法,接受一个Context参数,自动使用当前程序包名作为前缀命名文件。
比如
存储为XML文件。如:
b)读出
使用Shared-Preferences对象的一系列get方法,与数据类型一一对应。
对于这些方法,两个参数:
1)键
2)默认值 传入键找不到对应值时,以什么默认值返回。
比如
3、实现记住密码功能
添加功能于Broadcast-Best-Practice 项目中。
4、数据库存储
核心:SQ Lite数据库存储,一轻量级的关系型数据库,android系统内置
(附:关系型数据库建立在关系模型基础上。由关系数据结构、关系操作集合、关系完整性约束组成。SQL是其中的一种标准数据查询语言,执行对数据库中数据的检索和操作。)
1)创建数据库:
Android提供了一个SQ-Lite-Open-Helper帮助类,提供了创建和升级功能。通过创建继承类来使用。
- 【第一行代码-Android】学习(一)及在studio的迁移(5)存储数据
- 【第一行代码-Android】学习(一)及在studio的迁移(4)intent学习
- 【第一行代码-Android】学习(一)及在studio的迁移(1)平台搭建
- 【第一行代码-Android】学习(一)及在studio的迁移(3)UI
- 【第一行代码-Android】学习(一)及在studio的迁移(2)创建活动及布局
- 第一行代码Android学习(一)
- Android第一行代码学习笔记四----数据存储
- 《第一行代码-Android》学习笔记(一)
- 第一行代码Android学习笔记(一)activity
- 第一行代码-Android 学习笔记(一)
- Android 数据存储 《第一行代码》
- 【第一行代码】Android数据存储
- 第一行代码学习笔记(一)
- 《第一行代码(第二版)》的学习(一)
- 第一行代码Android学习(二)
- 第一行代码Android学习(三)
- 第一行代码Android学习(四)
- 第一行代码Android学习(五)
- charCodeAt 和 String.fromCharCode 用法
- ThinkPHP内容管理系统开发日记(一)--规划数据库。
- Jenkins 简单使用
- SVN认证失败的错误分析
- HDU1076——An Easy Task
- 【第一行代码-Android】学习(一)及在studio的迁移(5)存储数据
- UE4下的某些保密字段的加密处理
- poj3239 n皇后问题快速得到一个解
- wget: command not found
- [Unity] Unity5.4 build iOS的时候把Plugins/Android也打进去了
- poj 1456
- jq复选框的判断
- 909422229__正则表达式简介
- JAVA 多态 由浅及深介绍