2

/** ArrayList 関数を実装した add、display、sort、delete、exit などのメソッドがいくつかあります。正しく動作しますが、問題は、追加されたオブジェクトが .txt ファイルに保存されず、一時的なオブジェクトだけであるということです。そのため、後で表示および削除できるように、それらをテキスト ファイルに追加する必要があります。これがコードの一部です。*/

public class testing {

    public static void main(String[] args) {
        String Command;
        int index = 0;
        Scanner input = new Scanner(System.in);
        ArrayList<String> MenuArray = new ArrayList<String>();
        boolean out = false;
        while (!out) {
            System.out.print("Enter your Command: ");
            Command = input.nextLine();
            // method ADD for adding object
            if (Command.startsWith("ADD ") || Command.startsWith("add ")) {
                MenuArray.add(Command.substring(4).toLowerCase());
                // indexing the object
                index++;
                /** i stuck here,it won't written into input.txt 
                BufferedWriter writer = new BufferedWriter(new FileWriter(
                        "input.txt"));
                try {
                    for (String save : MenuArray) {
                        int i = 0;
                        writer.write(++i + ". " + save.toString());
                        writer.write("\n");
                    }
                } finally {
                    writer.close();
                }*/
            } else if (Command.startsWith("EXIT") || Comand.startsWith("exit")) {
                out = true;
            }
        }
    }
}
4

2 に答える 2

4

FileUtils#writeLinesは、必要なことを正確に行うようです。

于 2013-09-28T10:20:18.060 に答える
3

ObjectOutputStreamオブジェクトをファイルに書き込むために使用できます。

try {
    FileOutputStream fos = new FileOutputStream("output");
    ObjectOutputStream oos = new ObjectOutputStream(fos);   
    oos.writeObject(MenuArray); // write MenuArray to ObjectOutputStream
    oos.close(); 
} catch(Exception ex) {
    ex.printStackTrace();
}
于 2013-09-28T10:20:36.013 に答える