2017-09-23 14 views
1

"fav.txt"ファイルにテキストデータを追加しようとしています。私は1つのアイテムをファイルに追加してリストに入れることしかできません。 1つまたは複数のアイテムをファイルおよびリストに追加するにはどうすればよいですか? これはアイテムをファイルに追加するためのコードです。openFileOutputはデータを取得しますが、リストは表示されません

private void writeToFile(String data,Context context) { 
    try { 

     FileOutputStream outputStream; 
     outputStream = openFileOutput("fav.txt", Context.MODE_PRIVATE); 
     outputStream.write(data.getBytes()); 
     outputStream.close(); 
    } 
    catch (IOException e) { 
     Log.e("Exception", "File write failed: " + e.toString()); 
    } 
} 

と、このコードは、それは動作しますが、一つだけのアイテムを返すファイル

public List<String> listele(Context context) throws FileNotFoundException { 
     InputStream inputstream=context.openFileInput("fav.txt"); 
     List<String> listem=new ArrayList<>(); 
    try{ 
     InputStreamReader readeer=new InputStreamReader(inputstream); 
     BufferedReader reader=new BufferedReader(readeer); 
     String line; 
     while((line=reader.readLine())!=null) 
     { 
      listem.add(line); 
     } 
     reader.close(); 
     return listem; 
    } 
    catch (Exception e) 
    { 

     e.printStackTrace(); 
     return null; 
    } 
} 

から読み込まれますか?このコードを修正するにはどうしたらいいですか?私はあなたのようなコードをチェックしました

+0

ファイルに何を正確に保存しますか? –

+0

@DimaKozhevinユーザーがボタンをクリックすると、edittextのテキスト項目のみ – omer1596

+0

複数の文字列を書きたいですか?ファイルからすべてのデータを読み込むのですか? –

答えて

0

:入力ファイル含むEXAMPLE.SQLの

public static List<String> listele(String fileName) throws FileNotFoundException { 
    InputStream inputstream = new FileInputStream(fileName); 
    List<String> listem = new ArrayList<>(); 
    try { 
     InputStreamReader readeer = new InputStreamReader(inputstream); 
     BufferedReader reader = new BufferedReader(readeer); 
     String line; 
     while ((line = reader.readLine()) != null) { 
      listem.add(line); 
     } 
     reader.close(); 
     return listem; 
    } catch (Exception e) { 
     e.printStackTrace(); 
     return null; 
    } 
} 

line1 
line2 

返されるリストには、サイズのEQを持っています。 2、おそらくファイルには1行しか含まれていない可能性があります。

+0

答えをありがとう、私はあなたがしたが、まだ動作しません、 "fav.txt:open failed:ENOENTそのようなファイルやディレクトリはありません) "と私は.txtを付けずに同じエラーを返しました – omer1596

+0

ファイル名が正しいことを確認してください。私の場合は_src/test/resources/example.txt_でした。私はテストリソースフォルダからロードしました –

+0

/data/data/com.project.readerone/files/favにロードしていましたが、テストファイルは私のファイルではありません – omer1596

関連する問題