为了简单起见,我有一个名为FileEditor的类: 包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方法,生成文件。然后用户进入另一个窗口,在那里定义块。*变量然后当调用按钮上的actionPerformed时,我想调用addBlock(),用当前变量格式化文件,但是当我尝试做的时候多次,我给了我控制台错误......请帮助。
答案 0 :(得分:0)
如果您想在每次调用addBlock()
时附加到该文件,请删除该行projectFile.close()
(或者更好,将其更改为projectFile.flush()
。
答案 1 :(得分:0)
在完成之前不要关闭格式化程序。