別のアクティビティで作成/変更されたテキスト ファイルから情報を取得するスピナーを使用しています。このメソッドを使用するアクティビティを開くと、filenotfound の例外を言ってクラッシュします。以前にファイルを作成してデータをファイルに追加するアクティビティを実行しましたが。Androidデバイスとエミュレーターの両方で試しました。
データをスピナーにロードするメソッドは次のとおりです。
public void loadOpp() throws FileNotFoundException {
BufferedReader inputReader = new BufferedReader(new InputStreamReader(
openFileInput("Opponent")));
String inputString;
List<String> final2 = null;
try {
while ((inputString = inputReader.readLine()) != null) {
final2.add(inputString);
}
} catch (IOException e) {
e.printStackTrace();
}
Spinner spinner= (Spinner) findViewById(R.id.spinner1);
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, final2);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(dataAdapter);
}
他のアクティビティでテキスト ファイルを作成するメソッドは次のとおりです。
public void onSubmitClick(View view) {
EditText mEdit;
String filename = "Opponent";
mEdit = (EditText)findViewById(R.id.oppName);
String string = mEdit.getText().toString();
FileOutputStream outputStream;
try {
outputStream = openFileOutput(filename, Context.MODE_APPEND);
outputStream.write(string.getBytes());
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
エラーは理解できますが、ファイルが作成された場合にエラーが発生する理由がわからないため、そもそもファイルが作成されていない可能性があります。このエラーを修正する方法、および将来それを回避する方法についての考え/基本的に何が間違っていますか。