您的位置:首页 > 移动开发 > Android开发

android数据存储的几种方式

2011-08-04 10:25 477 查看
1.据目前所指的android的存储分为一下几种

(1)以键值对的形式存储的少量讯息:问候语,默认输入等等

用sharedpreferences

通过getSharedPreferences(Stirng ,int);获取对象,

对象.edit().putString(name,object).commit();来封装信息进去

通过对象.getString(name,"");获取到储存的值

(2)在本应用程序目录下的文件可以用文件流的读写读取

输出流。如果指定文件不存在,会创建它。并且写入内容会覆盖原内容,如果不想

覆盖可制定模式为Context.MODE_APPEND//不会覆盖

FileOutputStream fos=openFileOutput("文件路径",Context.MODE_PRIVATE);//会覆盖

输入流

FileInputStream fis=openFileInput("文件路径");

(3)SQLite数据库存储

extras 把数据放入intent中,然后再取出

放入

Intent i = new Intent(this, ActivityDiaryEdit.class);

i.putExtra(DiaryDbAdapter.KEY_ROWID, id);

i.putExtra(DiaryDbAdapter.KEY_TITLE, c.getString(c

.getColumnIndexOrThrow(DiaryDbAdapter.KEY_TITLE)));

i.putExtra(DiaryDbAdapter.KEY_BODY, c.getString(c

.getColumnIndexOrThrow(DiaryDbAdapter.KEY_BODY)));

取出

Bundle extras = getIntent().getExtras();

String title = extras.getString(DiaryDbAdapter.KEY_TITLE);

String body = extras.getString(DiaryDbAdapter.KEY_BODY);

mRowId = extras.getLong(DiaryDbAdapter.KEY_ROWID);

类似hashmap的集合用于存储string, 基本类型

ContentValues initialValues = new ContentValues();

initialValues.put(KEY_TITLE, title);

initialValues.put(KEY_BODY, body);

创建数据库

private static final String database_create=

"create table diary(_id integer primary key autoincrement,"

+"title text not null,body text not null,created text not null);";

private static final String database_name="database";

private static final String database_table="diary";

private static final int database_version=1;

//j使用内部类创建一个数据库

private static class DatabaseHelper extends SQLiteOpenHelper{

DatabaseHelper(Context context){

super(context,database_name,null,database_version);

}

@Override

public void onCreate(SQLiteDatabase db) {

// TODO Auto-generated method stub

db.execSQL(database_create);

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

// TODO Auto-generated method stub

db.execSQL("drop table if exists diary");

onCreate(db);

}

}

使用SQLiteOpenHelper 创建一个数据库

conn=DatabaseHelper.getWritableDatabase(); 可以得到一个更新数据库的对象,实现 update,insert,delete

conn=DatebaseHelper.getReadableDatabase(); 可以得到一个查询数据库的对象。实现select

操作数据库

conn.qurey();

conn.delete();

conn.insert();

conn.update();

创建数据库

SQLDatabase.exec();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: