用文件进行数据存储 1.存储到android自带的存储空间中 Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。

通过Context.openFileOutput(String name,int mode)可以获取一个文件输入流

name为文件名,mode为文件模式,有4种模式

输出流指向路径为:/data/data/包名/files/

文件模式在Context中有定义常量

MODE_PRIVATE 私有的且覆盖

MODE_APPEND 私有的且追加

MODE_WORLD_READABLE 其他程序可读但不可写

MODE_WORLD_WRITEABLE 其他程序可写但不可读

组合模式使用(其他程序可写也可读),例如:MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE


2.写入文件到SD卡

使用Activity的openFileOutput()方法保存文件,文件是存放在手机空间上,一般手机的存储空间不是很大,存放些小文件还行,如果要存放像视频这样的大文件,是不可行的。对于像视频这样的大文件,我们可以把它存放在SDCard。 SDCard是干什么的?你可以把它看作是移动硬盘或U盘。

(1).首先要在清单文件中(AndroidManifest.xml)中加入访问SDCard的权限如下:

(2).判断用户是否插入SDCard卡 (3).业务层保存操作

注:2.1版本以下的SDCard位置和2.2之后版本不同

可以通过Environment.getExternalStorageDirectory()获取当前SDCard位置,兼容所有版本

获取SDCard状态

通过Environment.getExternalStorageState()方法获取SDCard当前装填

常量 Environment.MEDIA_MOUNTED 为已安装

读取文件内容

如果要打开存放在/data/data/<packagename>/files目录应用私有的文件,可以使用Activity提供openFileInput()方法。

如:


测试:


SharedPreferences(参数)存储

很多时候我们开发的软件需要向用户提供软件参数设置功能,例如我们常用的QQ,用户可以设置是否允许陌生人添加自己为好友。对于软件配置参数的保存,如果是window软件通常我们会采用ini文件进行保存,如果是j2se应用,我们会采用properties属性文件或者xml进行保存。如果是Android应用,我们最适合采用什么方式保存软件配置参数呢?Android平台给我们提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数。使用SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data/<package name>/shared_prefs目录下:

在程序中保存一些配置参数的时候我们经常使用SharedPreferences

Context.getSharedPreferences(String name,int mode)

该方法可以在/data/data/<package>/shared_pref/目录下创建一个以name命名的xml文件,mode文件为模式

存储偏好

调用edit()方法可以获取一个Editor对象,对数据进行存储,存储之后需要调用commit()保存到文件

读取偏好

获得SharedPreferences之后调用getString()、getInt()等方法获取其中设置的值

在Activity中获取SharedPreferences

在Activity中可以调用getPreferences(int mode)方法获得一个SharedPreferences,文件名和Activity名一致


更多相关文章

  1. Android(安卓)Studio系列-签名打包
  2. Android(安卓)开发中使用 SQLite 数据库
  3. AVD(android virtual device)路径设置
  4. 【Android】数据存储之Shared Preferences
  5. Android心得3.2--用SAX解析器解析xml文件内容
  6. android通过chmod命令实现文件权限修改
  7. mybatisplus的坑 insert标签insert into select无参数问题的解决
  8. python起点网月票榜字体反爬案例
  9. NPM 和webpack 的基础使用

随机推荐

  1. Android音频开发(6):使用 OpenSL ES API(上)
  2. Android日志系统Logcat源代码简要分析
  3. Android百度地图——搜索服务之周边检索
  4. Android(安卓)客户端访问服务器以及服务
  5. android 线性布局几个属性
  6. 浅析Android权限机制(一) —— Android的权
  7. Android(安卓)Studio 2.2 预览 - 新的UI
  8. Android(安卓)Studio 3.2.2- Android(安
  9. Android中各种JAVA包的功能描述
  10. Android应用程序注册广播接收器(registerR