Java 使用PrintWriter无法输出到文件
我没有得到编译错误,但是我的代码没有向保存的文件输出任何内容。代码确实创建了文件,但它们是空的。有人知道我做错了什么吗Java 使用PrintWriter无法输出到文件,java,printwriter,Java,Printwriter,我没有得到编译错误,但是我的代码没有向保存的文件输出任何内容。代码确实创建了文件,但它们是空的。有人知道我做错了什么吗 public class CellAutomataTest { public static void main(String[] args) { int rule = 120;//Integer.parseInt(args[0]); int numGen = 5;//Integer.parseInt(args[1]); String fileSt
public class CellAutomataTest {
public static void main(String[] args)
{
int rule = 120;//Integer.parseInt(args[0]);
int numGen = 5;//Integer.parseInt(args[1]);
String fileStem = "ca";//args[2];
int width = 400;//Integer.parseInt(args[3]);
int height = 400;//Integer.parseInt(args[4]);
CellAutomata test = new CellAutomata(numGen, rule);
PrintWriter writer = null;
try {
writer = new PrintWriter(new FileWriter(fileStem + ".js"));
} catch (IOException ex) {
Logger.getLogger(CellAutomataTest.class.getName()).log(Level.SEVERE, null, ex);
}
PrintWriter writer2 = null;
try {
writer2 = new PrintWriter(new FileWriter(fileStem + ".html"));
} catch (IOException ex) {
Logger.getLogger(CellAutomataTest.class.getName()).log(Level.SEVERE, null, ex);
}
writer.println("function draw() {");
writer.println("var canvas = document.getElementById('CellAutomata');");
writer.println("if (canvas && canvas.getContext) {");
writer.println("var context = canvas.getContext('2d');");
test.simulate(writer, width, height);
writer2.println("<html>");
writer2.println("<head>");
writer2.println("<script src=\"" + fileStem + ".js></script>");
writer2.println("<style type=\"text/css\">");
writer2.println("canvas { border: 1px solid black; }");
writer2.println("</style> </head>");
writer2.println("<body onload=\"draw();\">");
writer2.println("<h1>Cellular Automata with Rule " + rule + "</h1>");
writer2.println("<canvas id=\"CellAutomata\" width=\"" + width + "\" height=\"" + height + "\">");
writer2.println("<p>Your browser doesn't support canvas.</p>");
writer2.println("</canvas> </body> </html>");
}
}
公共类CellAutomatest{
公共静态void main(字符串[]args)
{
int rule=120;//Integer.parseInt(args[0]);
int numGen=5;//Integer.parseInt(args[1]);
字符串fileStem=“ca”//args[2];
int width=400;//Integer.parseInt(args[3]);
int height=400;//Integer.parseInt(args[4]);
细胞自动机测试=新细胞自动机(numGen,规则);
PrintWriter=null;
试一试{
writer=newprintwriter(newfilewriter(filetem+“.js”);
}捕获(IOEX异常){
Logger.getLogger(CellAutomatest.class.getName()).log(Level.SEVERE,null,ex);
}
PrintWriter writer2=null;
试一试{
writer2=新的PrintWriter(新的FileWriter(filetem+“.html”);
}捕获(IOEX异常){
Logger.getLogger(CellAutomatest.class.getName()).log(Level.SEVERE,null,ex);
}
println(“函数draw(){”);
writer.println(“var canvas=document.getElementById('CellAutomata');”;
println(“if(canvas&&canvas.getContext){”);
writer.println(“var context=canvas.getContext('2d');”;
测试。模拟(书写器、宽度、高度);
writer2.println(“”);
writer2.println(“”);
writer2.println(“您需要使用:
writer2.flush();
writer2.close();
实际保存文件。事实上,他只需要关闭文件。关闭会刷新写入输出流的内容。谢谢。我是Java新手,所以我不知道必须包含这些内容。我应该知道有一些命令可以这样做。无论如何,现在我成功地保存到文件,并且发现它是n不要像怀疑的那样创建网格,所以现在真正的乐趣开始了。