Android数据存储的五种方式2

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Android数据存储的五种方式

Android数据存储的五种方式1:https://developer.aliyun.com/article/1473559

cache目录下读数据
FileInputStream fis;
BufferedReader br;
File file = new File(getCacheDir(), "gjcData");
try {
  fis = new FileInputStream(file);
  br = new BufferedReader(new InputStreamReader(fis));
  String line = br.readLine();
  while(line!=null){
    line = br.readLine();
  }
} catch (Exception e) {
  e.printStackTrace();
} finally {
  br.close();
  fis.close();
}

外部存储

添加权限

<!-- 允许程序写入外部存储-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

写数据

FileOutputStream fos;
BufferedWriter bw;
// 创建gjcData文件对象,由于不同手机SDcard目录不同,所以我们通过Environment.getExternalStorageDirectory()获取路径
File file = new File(Environment.getExternalStorageDirectory(), "gjcData");
if (!file.exists()){
  try {
    file.createNewFile();
  } catch (Exception e) {
    e.printStackTrace();
  }
}
try {
  fos =new FileOutputStream(file);
  bw = new BufferedWriter(new OutputStreamWriter(fos));
  bw.write("Hello world");
  bw.flush();
} catch (Exception e) {
  e.printStackTrace();
} finally {
  bw.close();
  fos.close();
}

读数据

FileInputStream fis;
BufferedReader br;
File file = new File(Environment.getExternalStorageDirectory(), "gjcData");
try {
  fis = new FileInputStream(file);
  br =  new BufferedReader(new InputStreamReader(fis));
  String line = br.readLine();
  while(line!=null){
    line = br.readLine();
  }
} catch (Exception e) {
  e.printStackTrace();
} finally {
  br.close();
  fis.close();
}

SQLite数据库存储数据

介绍: SQLite是Android所带的一个标准的数据库,它支持SQL语句,它是一个轻量级的嵌入式数据库

数据库的操作借助于SQLiteOpenHelper,SQLiteOpenHelper是一个抽象类,所以我们在使用SQLiteOpenHelper时要先创建一个MySQLiteOpenHelper类继承SQLiteOpenHelper


SQLiteOpenHelper有两个比较重要的方法


getReadableDatabase()方法返回数据库是一个只读的;

getWriteableDatabase()方法获得是一个可读写的数据库对象。

创建一个MySQLiteOpenHelper

public class MySQLiteOpenHelper extends SQLiteOpenHelper {

     // 构造器,传入四个参数(Context上下文环境,String数据库名字,CursorFactory操作数据库的Cursor对象(通常为null),int数据库版本号) 
    public MySQLiteOpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }
    
    // 自定义的构造器
    public MySQLiteOpenHelper(Context context, String name) {
        this(context, name, null, 1);//传入Context和数据库的名称,调用上面的构造器
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        // 在创建数据库时,创建一个user数据表
        String sql = "create table if not exists user(id integer primary key  autoincrement, name varchar(20), password varchar(20))";
        sqLiteDatabase.execSQL(sql);
    }
    
    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
      //用于修改数据库版本(第一个参数是SQLiteDatabase对象,第二个参数是旧的版本号,第三个参数是新版本号。一般我们在这个方法里边删除数据库表,并建立新的数据库表)
    }
}

Android数据存储的五种方式3:https://developer.aliyun.com/article/1473561

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
存储 Java 数据库
Android数据存储:什么是Room Persistence Library?
Android数据存储:什么是Room Persistence Library?
267 0
|
存储 数据库连接 数据库
Android数据存储:解释SQLite数据库在Android中的使用。
Android数据存储:解释SQLite数据库在Android中的使用。
216 0
|
存储 数据库 文件存储
android 数据存储的知识点
android 数据存储的知识点
152 0
|
存储 XML Android开发
Android Studio App开发入门之数据存储中共享参数SharedPreferneces的讲解及使用(附源码 超详细必看)
Android Studio App开发入门之数据存储中共享参数SharedPreferneces的讲解及使用(附源码 超详细必看)
230 0
|
存储 XML 文件存储
Android数据存储的五种方式1
Android数据存储的五种方式
215 2
|
存储 安全 Android开发
Android数据存储:请解释ContentProvider是什么,它的主要作用是什么?
ContentProvider是Android的四大组件之一,主要负责结构化数据的管理与共享。它封装数据并提供安全的访问接口,通过URI实现应用间数据的标准化共享。ContentResolver与ContentProvider协作,处理数据的CRUD操作,使得其他应用能方便地调用和操作数据。
135 0
|
存储 Android开发
Android数据存储的五种方式3
Android数据存储的五种方式
89 0
|
存储 XML 文件存储
Android数据存储:什么是SharedPreferences?它有什么用途?
Android数据存储:什么是SharedPreferences?它有什么用途?
511 0
|
存储 数据库 文件存储
android开发,使用kotlin学习数据存储
android开发,使用kotlin学习数据存储
217 0
|
存储 文件存储 Android开发
原汁原味的安卓文件存储(数据存储系列)
本篇将进一步看看文件存储是怎么用的。
228 0

热门文章

最新文章