您的位置:首页 > 编程语言

第一行代码-第6章 数据存储方案,持久化技术

2016-11-14 16:34 387 查看

1. 文件存储

文件存储是android中最基本的一种数据存储方式。





package com.example.liu.filepersistencetest;

import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.EditText;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class MainActivity extends AppCompatActivity {

private EditText edit=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

edit=(EditText)findViewById(R.id.edit);
String str=load("data_test");
edit.setText(str);
}

@Override
protected void onDestroy(){
super.onDestroy();
String str=edit.getText().toString();
save(str,"data_test");
}

//将数据str写入到文件file中
public void save(String str,String file){
FileOutputStream out=null;
BufferedWriter writer=null;
try{
out=openFileOutput(file, Context.MODE_PRIVATE);  //可选模式Context.MODE_APPEND
writer=new BufferedWriter(new OutputStreamWriter(out));
writer.write(str);
}catch (IOException e){
e.printStackTrace();
}finally {
try{
if(writer!=null){
writer.close();
}
}catch (IOException e){
e.printStackTrace();
}
}
}

//从文件file中加载数据到String
public String load(String file){
FileInputStream in=null;
BufferedReader reader=null;
StringBuilder content=new StringBuilder();

try{
in=openFileInput(file);
reader=new BufferedReader(new InputStreamReader(in));
String line="";
while((line=reader.readLine())!=null){
content.append(line);
}
}catch(IOException e){
e.printStackTrace();
}finally {
if(reader!=null){
try{
reader.close();
}catch (IOException e){
e.printStackTrace();
}
}
}
return content.toString();
}
}


2. SharedPreferences存储



SharedPreferences来进行数据持久化比文件方便很多。

3. SQLite数据库存储

android内置数据库,SQLite 轻量级关系型数据库,运算速度快,占用资源少,特别适合在移动设备上使用。不仅支持SQL语法,也支持ACID事务。

操作主要包括数据库的创建和升级,数据的增删改查。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: