小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Android開發(fā)學(xué)習(xí)筆記:數(shù)據(jù)存取之File淺析

 五谷雜味 2011-09-11
  Android系統(tǒng)中提供了一種 文件讀寫的方法,可以將一些數(shù)據(jù)以文件的形式保存在設(shè)備中。比如一些word文檔,PDF文檔,圖片,音頻,視頻文件等。

使用文件讀寫方 法的步驟:

1.調(diào)用Context.openFileInput()方法獲得Java文件輸入流 (FileInputStream)

2.調(diào)用 Context.openFileOutput()方法獲得java文件輸出流(FileOutputStream)

3.使用 Resources.openRawResource(R.raw.DataFile)方法返回InputStream

   下面的具 體實例,在一個Activity里面創(chuàng)建兩個EditText和兩個Button,第一個EditText和Button將EditText的內(nèi)容寫到文 件file.txt文件中。第二個EditText和Button將內(nèi)容從文件file.txt中讀取出來顯示。文件被默認(rèn)保存在/data/data /package/files下面。

 

 MainActivity.java

  1. package com.android.file;  
  2.  
  3. import java.io.FileInputStream;  
  4. import java.io.FileOutputStream;  
  5. import android.app.Activity;  
  6. import android.os.Bundle;  
  7. import android.view.View;  
  8. import android.view.View.OnClickListener;  
  9. import android.widget.Button;  
  10. import android.widget.EditText;  
  11.  
  12. public class MainActivity extends Activity {  
  13.     //聲明文件名字符串常量  
  14.     private static final String FILE_NAME="file.txt";  
  15.     private Button writeBtn,readBtn;  
  16.     private EditText writeText,readText;  
  17.     @Override 
  18.     public void onCreate(Bundle savedInstanceState) {  
  19.         super.onCreate(savedInstanceState);  
  20.         setContentView(R.layout.main);  
  21.         writeBtn = (Button)findViewById(R.id.Button1);  
  22.         readBtn = (Button)findViewById(R.id.Button2);  
  23.           
  24.         writeText = (EditText)findViewById(R.id.EditText1);  
  25.         readText = (EditText)findViewById(R.id.EditText2);  
  26.           
  27.         writeBtn.setOnClickListener(new OnClickListener() {  
  28.             @Override 
  29.             public void onClick(View v) {  
  30.                 //寫內(nèi)容  
  31.                 write(writeText.getText().toString());  
  32.             }  
  33.         });  
  34.           
  35.         readBtn.setOnClickListener(new OnClickListener() {  
  36.             @Override 
  37.             public void onClick(View v) {  
  38.                 //讀內(nèi)容  
  39.                 readText.setText(read());  
  40.             }  
  41.         });  
  42.     }  
  43.       
  44.     private String read(){  
  45.         try {  
  46.             //實例化文件輸入流對象  
  47.             FileInputStream fis = openFileInput(FILE_NAME);  
  48.             //定義緩存數(shù)組  
  49.             byte[] buffer = new byte[fis.available()];  
  50.             //讀到緩沖區(qū)  
  51.             fis.read(buffer);  
  52.             return new String(buffer);  
  53.         } catch (Exception e) {  
  54.             e.printStackTrace();  
  55.         }  
  56.         return null;  
  57.     }  
  58.       
  59.     private void write(String content){  
  60.         try {  
  61.             //實例化文件輸出流  
  62.             //openFileOutput(String name, int mode)  
  63.             //第一個參數(shù)文件名  
  64.             //第二個是模式   
  65.             //MODE_APPEND表示要創(chuàng)建的文件存在則新寫入的數(shù)據(jù)不會覆蓋以前的數(shù)據(jù)。  
  66.             FileOutputStream fos = openFileOutput(FILE_NAME, MODE_APPEND);  
  67.             //寫內(nèi)容  
  68.             fos.write(content.getBytes());  
  69.             //關(guān)閉文件流  
  70.             fos.close();  
  71.         } catch (Exception e) {  
  72.             e.printStackTrace();  
  73.         }  
  74.     }  

 main.java

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas./apk/res/android" 
  3.     android:orientation="vertical"   
  4.     android:layout_width="fill_parent" 
  5.     android:layout_height="fill_parent" 
  6.     > 
  7.     <TextView   
  8.         android:layout_width="fill_parent" 
  9.         android:layout_height="wrap_content"   
  10.         android:text="請被文本輸入內(nèi)容"   
  11.         />        
  12.     <EditText   
  13.         android:text=""   
  14.         android:id="@+id/EditText1" 
  15.         android:layout_width="fill_parent"   
  16.         android:layout_height="wrap_content"   
  17.         android:height="100px" 
  18.         />        
  19.     <Button   
  20.         android:id="@+id/Button1"   
  21.         android:layout_width="wrap_content" 
  22.         android:layout_height="wrap_content"   
  23.         android:text="寫數(shù)據(jù)" 
  24.         />        
  25.     <EditText   
  26.         android:text=""   
  27.         android:id="@+id/EditText2" 
  28.         android:layout_width="fill_parent"   
  29.         android:layout_height="wrap_content"   
  30.         android:height="100px" 
  31.         />        
  32.     <Button   
  33.         android:id="@+id/Button2"   
  34.         android:layout_width="wrap_content" 
  35.         android:layout_height="wrap_content"   
  36.         android:text="讀數(shù)據(jù)" 
  37.         />        
  38. </LinearLayout> 

效果圖:

 

在終端下輸入“adb shell”命令進(jìn)入Android系統(tǒng)查看一下我們的文件是否寫入成功。

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多