国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Android持久化存儲總結

Eric / 2021人閱讀

摘要:本文旨在復習總結持久化存儲方法,只列出了主要代碼以及少量批注,僅作為復習參考使用。

本文旨在復習總結Android持久化存儲方法,只列出了主要代碼以及少量批注,僅作為復習參考使用。

文件存儲

所有文件默認放在/data/data//files/目錄下

文件寫入
    public void save(String inputText){
        FileOutputStream out=null;
        BufferedWriter writer=null;
        try {
            out=openFileOutput("data", Context.MODE_PRIVATE);
            writer=new BufferedWriter(new OutputStreamWriter(out));
            writer.write(inputText);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if(writer!=null){
                try {
                    writer.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
讀取文件
    public String load(){
        FileInputStream in =null;
        BufferedReader reader=null;
        StringBuilder content=new StringBuilder();
        try {
            in=openFileInput("data");
            reader=new BufferedReader(new InputStreamReader(in));
            String line="";
            while ((line=reader.readLine())!=null){
                content.append(line);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if(reader!=null){
                try {
                    reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return content.toString();
    }
SharePreferences方法

SharePreference文件默認放在/data/data//shared_prefs/目錄下

SharedPreferences寫入
SharedPreferences.Editor editor=getSharedPreferences("data",MODE_PRIVATE).edit();
editor.putString("et_inputText","sharePreferences test");
editor.commit();
SharedPreferences讀取
SharedPreferences sp=getSharedPreferences("data",MODE_PRIVATE);
String input=sp.getString("et_inputText","請輸入用戶名");//第二個參數是為空的默認信息
SQLite數據庫存儲

SQLite文件默認放在/data/data//databases/目錄下

public class MyDataBaseHelper extends SQLiteOpenHelper{
    private static final String CREATE_BOOK="create table Book("
            +"id integer primary key autoincrement, "
            +"author text, "
            +"price real, "
            +"pages integer, "
            +"name text)";
    private static final String CREATE_CATEGORY="create table Category("
            +"id integer primary key autoincrement, "
            +"category_name text, "
            +"category_code integer)";
    private Context mContext;
    public MyDataBaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
        mContext=context;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(CREATE_BOOK);
        db.execSQL(CREATE_CATEGORY);
        Toast.makeText(mContext,"create succeed",Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("drop table if exists Book");
        db.execSQL("drop table if exists Category");
        onCreate(db);
    }

創建數據庫

 dbHelper=new MyDataBaseHelper(this,"BookStore.db",null,2);

插入數據

SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name","Effective Java");
values.put("author","Joshua Bloch");
values.put("pages",454);
values.put("price",16.96);
db.insert("Book",null,values);

更新數據

ContentValues values=new ContentValues();
values.put("price",198.00);
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.update("Book",values,"name=?",new String[]{"Android Programme"});

刪除行

SQLiteDatabase db = dbHelper.getWritableDatabase();
db.delete("Book", "pages > ?", new String[] { "500" });

ContentValues知識android提供的一個便于數據庫操作的類,為數據庫操作提供便利,也可以直接使用數據庫語句進行操作

參考書目《第一行代碼》

更多關于java的文章請戳這里:(您的留言意見是對我最大的支持)

我的文章列表
Email:sxh13208803520@gmail.com

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/66961.html

相關文章

  • 01.Android之基礎組件問題

    摘要:此時再次旋轉屏幕時,該不會被系統殺死和重建,只會調用。因此可通過和來判斷是否被重建,并取出數據進行恢復。但需要注意的是,在取出數據時一定要先判斷是否為空。只有在進程不被掉,正常情況下才會執行方法。 目錄介紹 1.0.0.1 說下Activity的生命周期?屏幕旋轉時生命周期?異常條件會調用什么方法? 1.0.0.2 后臺的Activity被系統回收怎么辦?說一下onSaveInsta...

    iamyoung001 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<