PrintWriter没有写入文件,但我关闭了作者? (Java)的

时间:2016-01-17 05:12:21

标签: java html eclipse printwriter

我尝试使用PrintWriter将一些文本写入html文件作为输出,并且文本不会保存到文件中。

import java.util.Random;
import java.util.*;
import java.io.PrintWriter;
import java.io.File;
import java.io.FileNotFoundException;
public class Creator 
{
static ArrayList<Character> grid = new ArrayList<Character>();
public static void main(String[]args) throws FileNotFoundException
{
    char[] alphabet={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};

    for(int row=0;row<625;row++)
    {
            grid.add(alphabet[RandGen(0,25)]);
            //System.out.print(grid.get(out));
    }
    Creator.Output();
    System.out.println("Executed.");
}
public static int RandGen(int min, int max)
{
    Random ran = new Random();
    int randomNum = ran.nextInt(max) + min;
    return randomNum;
}
public static void Output()throws FileNotFoundException
{
    //File file=new File("wsm.html");
    //File.createNewFile();
    PrintWriter writer = new PrintWriter("wordsearchmaker.html");
    writer.println("<html>");
    writer.println("<table>");
    writer.println("tr");
    for(int j=0;j<25;j++)
    {
        //for(int k=0;k<25;k++)
    //  {
            System.out.println("<th>"+grid.get(j));
            writer.println("<th>"+grid.get(j));
    //  }

    }
    writer.flush();
    writer.close();

    System.out.println("Outputting...");
}

}

所以我检查过这些方法都在运行(因此&#34;输出......&#34;),并且我system.out.printed我想要的内容写入文件,输出正是我想要的。它应该将html代码输出到一个html文件(名为wordsearchmaker.html),但没有任何内容保存到该文件中。我在网上看到的任何地方都只是为了确保我关闭了作家,我做了。

注意:我在eclipse工作,这对我来说一直很挑剔,所以我可能会搞乱那里的东西?我不经常在日食工作,所以完全有可能。

1 个答案:

答案 0 :(得分:0)

看起来您已经打开了PrintWriter,它允许您将数据发送到文件。但您实际上没有打开或创建过文件。

首先尝试创建新文件并进行修改:

import java.io.File;

File newFile = new File ("LOCATION OF FILE");

然后,将PrintWriter设置为使用newFile。