2、 File: 即常说的文件(I/O)存储方法,常用存储大数量的数据,但是缺点是更新数据将是一件困难的事情。
下面实现:在本地data文件下使用自己生成的文件处理数据的新建储存 读取 删除
如果说不想把内容存在SharedPreferences中的话,我们可以自己写一个文件保存须要的数据,在这里我将文件保存在系统中的工程路径下。
跟上面布局一样,删除文件也一样,清除内容也查不多,下面只是简单的写和读的方法:
写:
String nameage="名字:"+name.getText().toString().trim()+"年龄:"+age.getText().toString(); try { os = this.openFileOutput(SHARED_MAIN_XML, MODE_PRIVATE); /* 把字符串转换成字节数组,写入文件中 */ os.write(nameage.getBytes()); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally { try { /* 关闭文件输出流 */ os.close(); } catch (IOException e) { e.printStackTrace(); } }
读:
private String read() { String nameage=""; // 打开文件输入流, try { is = this.openFileInput(SHARED_MAIN_XML); /* 初始化字节数组 */ b = new byte[1024]; /* 从文件输入流中读取内容到字节数组中,返回内容长度 */ int length = is.read(b); /* 把字节数组转换成字符串 */ nameage= new String(b); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return nameage; }
很简单吧!!
3、 SQLite是一种转为嵌入式设备设计的轻型数据库,其只有五种数据类型,分别是:
NULL: 空值
INTEGER: 整数
REAL: 浮点数
TEXT: 字符串
BLOB: 大数据
它是一个轻量级的数据库、非常小 、 移植性好、效率高、可靠
在Android系统中提供了android.database.sqlite包,用于进行SQLite数据库的增、删、改、查工作。
创建与删除数据库
封装一个类去继承SQLiteOpenHelper 在构造函数中传入数据库名称与数据库版本号,数据库被创建的时候会调用onCreate(SQLiteDatabase db) 方法,数据库版本号发生改变的时候会调用onUpgrade(SQLiteDatabase db, int oldVersion, intnewVersion)方法,可以方便的对软件游戏升级后做出相应处理避免覆盖安装数据库发生改变产生的错误。调用SQLiteOpenHelper 的getReadableDatabase()方法去创建数据库,如果数据库不存在则创建并且返回SQLiteDatabase对象,如果数据库存在则不创建只返回SQLiteDatabase对象。调用 deleteDatabase(DATABASE_NAME)方法 传入数据库名称则可删除数据库。
第一种:详细请看这篇:Android之利用SQLite数据库实现登陆和注册,
下面介绍第二种:另一种添删改查操作
效果图:
布局文件很简单,在此不再给出!!