0

いくつかのデータをファイルに書き出そうとしています。ただし、プログラムを再起動するたびに、元のファイルが上書きされていると思います(新しいファイルを作成しますか?)。これは、インスタンス化するコードのスニペットです。ファイルが毎回上書きされないように変更できるものはありますか?file.doesExist??のようなもの

try {
        File root = Environment.getExternalStorageDirectory();
        if(root.canWrite()){
        File highscoresFile = new File(root, "names.txt");
        FileWriter writer = new FileWriter(highscoresFile);
        BufferedWriter out = new BufferedWriter(writer);
        //out.newLine();
        out.append(name);
        out.close();
        }
    } catch (FileNotFoundException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
4

1 に答える 1

1

ファイルを上書きしている可能性があります。別のコンストラクターを使用して、FileWriter でファイルの末尾に追加できます。

代わりに使用

FileWriter writer = new FileWriter(highscoresFile, true);

最後のブール値は、ファイルの最後に追加するかどうかを示します。

于 2011-05-11T22:57:29.443 に答える