2016-12-25 74 views
0

我在文件夾res/raw name「pass.txt」中有一個文本文件,其中的一些數據我想刪除這些數據並在其中輸入新數據....是它可以在上面寫數據?否則什麼是正確的路徑來存儲我的文本文件,所以我可以輕鬆地讀/寫它的數據....什麼是從它讀取和寫入數據的代碼?下面是代碼,通過它我也只能在這個文本文件中讀取數據包含在您的原始目錄中的項目將在您的APK中被打包在res/raw文件夾中寫入文本文件

InputStream fr = getResources().openRawResource(R.raw.pass); 
        BufferedReader br = new BufferedReader(new InputStreamReader(fr)); 
        String s=br.readLine().toString().trim(); 
+0

不能寫入文件到原始夾。它的只讀... – rafsanahmad007

回答

0

可以使用Android內部存儲讀取和寫入文件......如RES/RAW是隻讀only..you不能在運行時更改的內容。

下面是代碼:

創建文件從文件

String MY_FILE_NAME = 「mytextfile.txt」; 
// Create a new output file stream 
FileOutputStream fileos = openFileOutput(MY_FILE_NAME, Context.MODE_PRIVATE); 
// Create a new file input stream. 
FileInputStream fileis = openFileInput(My_FILE_NAME); 

閱讀:

public void Read(){ 
static final int READ_BLOCK_SIZE = 100; 
try { 
      FileInputStream fileIn=openFileInput("mytextfile.txt"); 
      InputStreamReader InputRead= new InputStreamReader(fileIn); 

      char[] inputBuffer= new char[READ_BLOCK_SIZE]; 
      String s=""; 
      int charRead; 

      while ((charRead=InputRead.read(inputBuffer))>0) { 
       // char to string conversion 
       String readstring=String.copyValueOf(inputBuffer,0,charRead); 
       s +=readstring;     
      } 
      InputRead.close(); 
      Toast.makeText(getBaseContext(), s,Toast.LENGTH_SHORT).show(); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
} 

寫入文件:

public void Write(){ 
try { 
     FileOutputStream fileout=openFileOutput("mytextfile.txt", MODE_PRIVATE); 
     OutputStreamWriter outputWriter=new OutputStreamWriter(fileout); 
     outputWriter.write("TEST STRING.."); 
     outputWriter.close(); 

     //display file saved message 
     Toast.makeText(getBaseContext(), "File saved successfully!", 
     Toast.LENGTH_SHORT).show(); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

} 
+0

openFileOutput和openFileInput不工作顯示錯誤 –

+0

你必須導入java.io.FileInputStream; 並導入java.io.FileOutputStream; – rafsanahmad007

+0

如果你不在活動中...你必須在openFile之前編寫getApplicationContext() – rafsanahmad007