在内部存储中将整数的值保存在TXT文件中



我正在制作文字游戏。我在代码开始时声明了一个" public int x = 0"。x的值是控制用户的进度和故事的主要文本以及无线电按钮的文本。我需要保存x的值,并能够加载它,以便使用以下代码保存用户进度。我以前可以通过复制代码来保存工作,但它只是打印X的值以及故事的主要文本。

                /*
                Saves the game data
                 */
                String text = t.getText().toString();
                try {
                    FileOutputStream fos = openFileOutput(TEXTFILE, Context.MODE_PRIVATE);
                    fos.write(text.getBytes());
                    fos.close();
                    t.setText("");
                } catch (Exception e) {
                    e.printStackTrace();
                }

    /*
    loads the game data
     */
    try {
        FileInputStream fis = openFileInput(TEXTFILE);

        TextView t = (TextView) findViewById(R.id.mainText);

        t.setText(null);

         BufferedReader reader = new BufferedReader(new InputStreamReader(new DataInputStream(fis)));
        String line;

        while ((line = reader.readLine()) != null){
            t.append(line);
            t.append("n");
        }
        fis.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}
//story logic
            }else if (rb1.isChecked() && (x==2)){
                t.setText("You put the key in your pocket");
            } else if (rb2.isChecked()&& (x==2)) {
                t.setText("You took the file");

用于存储类似的东西,您最好使用共享Preferences

保存:

PreferenceManager.getDefaultSharedPreferences(context).edit().putInt("KEY", value);

加载:

int value = PreferenceManager.getDefaultSharedPreferences(context).getInt("KEY", defaultValue);

最新更新