SAME アクティビティでテキスト ファイルの書き込みと読み取りを行うことはできますが、別のアクティビティからテキスト ファイルに書き込みを行った後、テキスト ファイルを読み取ることができません。
例: アクティビティ Aは、テキスト ファイルを作成して書き込みます。アクティビティ Bはそのテキスト ファイルを読み取ります。
このコードを使用して、アクティビティ Aのテキスト ファイルに書き込みます。
FileOutputStream fos = null;
OutputStreamWriter osw = null;
try
{
fos = openFileOutput("user_info.txt", Context.MODE_WORLD_WRITEABLE);
osw = new OutputStreamWriter(fos);
osw.write("text here");
osw.close();
fos.close();
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
次に、このコードを使用して、アクティビティ Aによって作成された同じテキスト ファイルを読み取ろうとしましたが、次のようになりますFileNotFoundException
。
try
{
FileInputStream fis = openFileInput("user_info.txt");
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader buff = new BufferedReader(isr);
String line;
while((line = buff.readLine()) != null)
{
Toast.makeText(this, line, Toast.LENGTH_LONG).show();
}
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
なぜ私が を取得しているのか誰にもわかりますFileNotFoundException
か?
パスの問題ですか?