Android-存储方式(持久化数据的方式)

Android中存储数据回顾笔记

Sqlite数据库

  1. 存储位置: data/data/包名/databases/数据库
  2. 通过继承SQLiteOpenHelper创建数据库和表
    • onCreate():当数据第一次创建的时候调用创建数据库
    • onUpgrade():更新数据库的时候调用(当数据库版本大于之前的版本就会自动调用这个方法)
    • 构造方法()
      ①上下文环境
      ②数据库的名字
      ③null
      ④version版本
    • 通过SQLiteDatabase db = helper.getReadableDatabase();获取sqlite对象
      1. 已经有写好的数据库
    • 首先将数据库拷贝到:data/data/包名/databases/数据库
    • 打开已经存在的数据:openOrCreateDatabase(“数据库名字”,null);

SharedPreferences

  1. 一般用于存储:状态、参数值、变量值。。。
  2. 存储位置:data/data/包名/shared_prefs/文件名.xml
  3. 使用步骤:

    ①得到一个SharedPreferences对象:(模式:私有、可追加、所有应用可读写)
    SharedPreferences sp = context.getSharedPreferences(“存储的文件名”, 模式);
    ②得到Editor对象
    Editor et = sp.edit();
    ③存储数据
    et.putString(key,value);
    ④提交
    editor.commit();

  4. 取出数据

    ①得到一个SharedPreferences对象
    SharedPreferences sp = context.getSharedPreferences(“存储的文件名”, 模式);
    ②取数据
    sp.getString(key,”默认值);

文件存储

内部存储

  1. 存储位置:data/data/包名/files
  2. 从内部files文件夹读:openFileInput(“文件名.txt”);
  3. 往内部files文件夹写:openFileOutput(“文件名.txt”, Context.MODE_PRIVATE);
  4. getCacheDir()方法:获取内部缓存的路径(这个文件夹中的内容当内存不足的时候会被自动清理)

外部存储

  1. 注意权限

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    往外部设备读写权限
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
    在外部设备创建或者删除的文件的权限
    1. 使用SD卡之前要判断SD卡是否可用
    Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)  可用
    1. 得到SD卡的路径
    Environment.getExternalStorageDirectory()

ContentProvider(内容提供者)

网络存储

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值