Как вызвать форматирование более одного раза в Java? - PullRequest
0 голосов
/ 30 августа 2011

Для простоты у меня есть класс FileEditor: package modmaker;

import java.io.FileNotFoundException;
import java.util.*;

public class FileEditor {
public static Formatter projectFile;
public static String modName;

public void overWriteFile(){
    try {
        projectFile = new Formatter(modName+".txt");
        System.out.println("Wrote project file");
    } catch (FileNotFoundException e) {
        System.out.println("Error writing project file");
    }
}
public void addBlock(){
    projectFile.format("blocks "+Blocks.blockName+" "+Blocks.blockDisplayName+" "+Blocks.doesEmitLight+" "+Blocks.lightValue+" "+Blocks.doesGenNaturally+" "+Blocks.genBelowLevel+" "+Blocks.genRariety+" "+Blocks.genClump+" "+Blocks.blockTexturePath);
    projectFile.close();
}
}

Когда пользователь впервые входит в программу, вызывается метод overWriteFile, создающий файл.Затем пользователь переходит к другому окну, где определяют переменные block. *, А затем, когда вызывается actionPerformed для кнопки, я хочу вызвать addBlock (), форматируя файл с текущими переменными, но когда я пытаюсь сделатьнесколько раз я выдаю сообщения об ошибках консоли ... помогите, пожалуйста.

Ответы [ 2 ]

0 голосов
/ 31 августа 2011

Не закрывайте средство форматирования, пока вы не покончили с ним.

0 голосов
/ 31 августа 2011

Если вы хотите добавлять к файлу каждый раз, когда вызывается addBlock(), то удалите там строку projectFile.close() (или, возможно, даже лучше, измените ее на projectFile.flush().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...