Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android學習之路之數據的使用(一)

Android學習之路之數據的使用(一)

編輯:關於Android編程

今天是Android學習第四天,上午簡單的學習了數據的存儲與使用,在這裡把上午的總結一下

數據存儲分為四大類:

* 文件

* Sharedpreference(參數)

* SQLite數據庫

* 內容提供者(Content provide)

先來看看前兩種方法,文件 和 Sharedpreference

1、 文件

這裡的文件和Java裡的文件時一模一樣的,具體的就不在介紹,看過程

首先在主界面上定義兩個按鈕,一個是“寫文件”一個是“讀文件”,先寫後讀

對寫文件添加監聽事件

writefile.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				String content="張三 20 male";
				//				FileOutputStream fos = new FileOutputStream("test.txt");
				FileOutputStream fos=null;
				try {
					fos = MainActivity.this.openFileOutput("data.txt", Context.MODE_PRIVATE);
					fos.write(content.getBytes());
				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}finally{
					if(fos!=null){
						try {
							fos.close();
						} catch (IOException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					}
				}

			}
		});
再對讀文件添加監聽事件

readfile.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				FileInputStream in=null;
				try {
					in = MainActivity.this.openFileInput("data.txt");
					byte[] bytes = new byte[1024];
					int length=0;
					StringBuffer content = new StringBuffer();
					while((length=in.read(bytes))!=-1)
					{
						content.append(new String(bytes,0,length));
					}
					Toast.makeText(MainActivity.this, content.toString(), Toast.LENGTH_SHORT).show();
				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}finally{
					if(in!=null){
						try {
							in.close();
						} catch (IOException e) {
							// TODO Auto-generated catch block
							e.printStackTrace();
						}
					}
				}

			}
		});
程序跑起來,先點擊寫文件,這個時候項目的包下就會多出一個data.txt文件,那麼不僅要問,這個文件怎麼才能看到呢!

我們用Eclipse開發的,那就在這個工具裡看

vc7Sw8e1xLD8PC9wPgo8cD48aW1nIHNyYz0="/uploadfile/Collfiles/20140918/2014091809041578.png" alt="\">


如上圖,files下的data.txt就是我們剛剛寫的文件,右上角的圈中可以講文件導出到電腦上,然後你可以查看裡面的內容,這裡不再演示

點擊讀文件的時候,就會顯示寫入的字符串

2、SharedPreferences

這是Android裡封裝好的一個包,好處就在於,方便,存取一些數據書寫很方便,提取也是如此

同樣在主界面畫兩個按鈕讀與寫

分別添加監聽事件

spwritefile.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// 獲取SharedPreferences對象
				SharedPreferences sp = getSharedPreferences("data", Context.MODE_PRIVATE);
				//獲取編輯器
				Editor ed =  sp.edit();
				//添加數據
				ed.putString("name", "張三");
				ed.putInt("age", 20);
				//提交
				ed.commit();
			}
		});
		spreadfile.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// 獲取SharedPreferences對象
				SharedPreferences sp = getSharedPreferences("data", Context.MODE_PRIVATE);
				String name = sp.getString("name", "燙");
				int age = sp.getInt("age", 0);;

				Toast.makeText(MainActivity.this, name+"---"+age, Toast.LENGTH_SHORT).show();

			}
		});
我們可以發現,寫數據的時候,先獲取SharedPreferences對象,然後獲取編輯器,然後直接putString就行了,最後別忘了commit提交,否則就像文本文件沒有保存一樣!!

讀文件的時候,get就行了,這個可以看一下倒出來的文件



張三


這個文件自動生成是xml文件,裡面就是Map,Key與Value

!!!!!!


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved