布局文件activity_main.xml如下:
MainActivity中基本代码如下,就是简单的声明控件和关联控件:
1.1、保存文件
接下来实现一下点击事件save():
代码看起来有点乱,我在中间空了许多,主要代码就那些。利用Context中的openFileOutput(String name, int mode)方法,传入文件名和操作模式。获取一个FileOutputStream对象,然后在存储文件。我这里直接用#来拼接,这样是有问题的。这里只是为了方便。
1.2、读取文件
我们写一个方法load,用来读取文件:
这里使用了Context中的openFileInput()方法,获取流,然后读取文件。因为文件流比较少用,我就讲到这里。
2、SharedPreferences简称Sp
Sp是一种用xml文件存储数据的方式,下面我具体讲一下。
2.1、Sp的创建
sp的创建方式有三种,第一种,之直接使用Context中的getSharedPreferences()方法,传入文件名和操作模式:
第二种,使用Activity中的getPreferences()方法,传入一个操作模式,文件名自动以类名命名:
第三种,使用PreferenceManager中的getDefaultPreferences()方法,传入一个Context参数:
2.2、用Sp保存数据
使用Editor对象存储,Editor中对应的数据类型有对应的方法。putString、putInt…
2.3、获取Sp中的文件
获取的时候直接用存储时的文件名创建一个Sp对象,就可以读取数据:
3、SQLite数据库
3.1、SQLite数据库的创建
SQLite数据库的创建需要实现抽象类SQLiteOpenHelper,具体先定义一个类MySQLiteOpenHelper继承SQLiteOpenHelper:
这里写了三个方法,其中onCreate()和onUpgrade()方法为SQLiteOpenHelper中的抽象方法。onCreate()在数据库创建时调用,只。而onUpgrade()在数据库升级时调用()(Version改变时)。所以onCreate()用于初始化表结构、onUpgrade()用于更新表结构。调用db.execSQL()方法,传入一个SQL语句就好了。
3.2、获取数据库
在Activity中创建MySQLiteOpenHelper的实例,然后通过这个实例获取数据库:
3.3、数据库操作
因为篇幅的关系,这里先不讲这么多了。SQLite中可以调用DataBase对象的execSQL()方法,通过SQL语句完成大多数操作。具体Android中特有的操作后面有机会的话我再讲。