Я действительно новичок в android и пишу простую игру для Android.
В игре, как и в большинстве игр, у вас есть счет, сейчас, я хочу, чтобы оценка была сохранена во внутреннем хранилище, и по какой-то причине мне удалось сохранить счет, но не загружать его обратно.
вот код:Ошибка внутренней памяти Android
final TextView best = (TextView) findViewById(R.id.best);
public int read = -1;
public StringBuffer buffer = new StringBuffer();
public String scoreTxt = buffer.substring(0, buffer.indexOf(" ") + 1);
public int score = 0;
// Save
try {
fileOutputStream = openFileOutput("record.txt", Context.MODE_PRIVATE);
fileOutputStream.write(scoreString.getBytes());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
if (fileOutputStream != null) {
try {
fileOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Toast.makeText(MainActivity.this, "Save() works fine", Toast.LENGTH_SHORT).show();
// load
try {
FileInputStream fileInputStream = openFileInput("record.txt");
while ((read = fileInputStream.read())!= -1){
buffer.append((char)read);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
best.setText("Best: " + scoreTxt);
Toast.makeText(MainActivity.this, "load() is good too " + scoreTxt, Toast.LENGTH_SHORT).show();
, когда я запустить приложение, нет аварии или ничего особенного в LogCat, но когда я когда-либо использовать scoreTxt
выход ничего, только «».
Может ли кто-нибудь помочь мне решить эту проблему? Спасибо
да, я на 5-й строке –