openFileOutput

FileOutputStream os=Activity.this.openFileOutput(“txtme.txt”,MODE_PRIVATE);—>/data/data/包名/files/目錄下會創建txtme.txt文件(如果該文件不存在的話),MODE_PRIVATE的文件是應用程序私有的,MODE_WORLD_READABLE則所有應用程序都可以訪問的,MODE_WORLD_WRITEABLE所有應用程序都可以寫,mode_APPEND則是如果要創建的文件存在則新寫入的數據不會覆蓋以前的數據。

Java代碼:

package wl.android;
 

import java.io.FileInputStream;
 
import java.io.FileOutputStream;
 
import com.henii.service.FileService;
 

import android.content.Context;
 
import android.test.AndroidTestCase;
 
import android.util.Log;
 

public class DataSaveTest extends AndroidTestCase {
 
private static final String TAG = "DataSaveTest";
 

public void testSave() throws Exception{
 
//openFileOutput方法的第一個參數用於指定文件名稱,不能包含路徑分割符“/”,
 
//參數二爲對文件的訪問權限,如果希望有多個權限,則寫成如下形式:
 
//Context.MODE_PRIVATE + Context.MODE_APPEND (注意是用“+”號)
 
//如果文件不存在,Android會自動創建它。
 
//創建的文件保存在/data/data/Activity所在的包/files目錄,
 
//如/data/data/com.henii.android/files/myText.txt,
 
//--------------------------------------------------------
 
//通過Window-Show View-Other,在對話窗口中展開Android文件夾,
 
//選擇下面的File Explorer視圖,就可以看到創建的文件了
 
//-------------------------------------------------------
 
//this.getContext方法獲取相應的當前應用Activity的上下文環境
 
FileOutputStream outStream = this.getContext().openFileOutput("myText.txt", Context.MODE_PRIVATE + Context.MODE_APPEND);
 

FileService.save(outStream, "Henii");
 
}
 

public void testRead()throws Exception{
 
//如果您要讀取其他應用的文件的話,你要完整寫出這個文件的路徑,如:
 
//如/data/data/com.henii.android/files/myText.txt,
 
//而且不能使用openFileInput方法(因爲這個方法的參數是不能帶分隔符“/”的)
 
//所以您只能使用最一般的讀取文件的方法進行讀取
 
FileInputStream inStream = this.getContext().openFileInput("myText.txt");
 

String henii = FileService.read(inStream);
 

Log.i(TAG, henii);
 
}
 
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章