将字符串和2D数组写入.text文件 - Java

时间:2012-03-30 15:26:08

标签: java string io multidimensional-array

我正在尝试将单个字符串和2D数组输出到.txt文件中并遇到问题,这是我项目的最后一部分。该程序应该输出一行,逗号分隔,字符串,然后在下一行,打印出2D数组中的双打,逗号分隔。我想能够将此全部打印到.txt文件,然后打开excel文件中的.txt文件来绘制信息图形。这是我到目前为止所知道的,可能会有比我看到的更多的错误:

 public void writeFile(double[][] array, String filename)
  {
     try{
        File f = new File("output.txt");
        Scanner scan = new Scanner(f);
        scan.useDelimiter("\\s*,\\s*");
        String label = "Algoritm-1, Algorithm-2, Algorithm-3, "
           + "n, n-squared, n-cubed"; //Only one printing of this line

        for (int i = 0; i <= 18; i++)
        {
           for (int j = 0; j <= 5; j++)
           {
              array[i][j] = scan.nextDouble(); //Having the current issue
           }
           scan.nextLine();
        }
     }
        catch (FileNotFoundException fnf) {
           System.out.println(fnf.getMessage());
        }
  }

2 个答案:

答案 0 :(得分:1)

您的输出文件似乎正在使用扫描仪。扫描仪通常用于读取输入文件。打开一个新的输出文件并将该数组打印到该文件。

查找OutputStreamWriter的示例。这里有一个: http://www.javapractices.com/topic/TopicAction.do?Id=42

建议:您可以使用数组维度的长度而不是使用18和5作为循环吗?

答案 1 :(得分:0)

Scanner用于从文件/流中读取,但您希望输出到该文件。使用其中一个Writer类(例如FileWriter,可能与BufferedWriter结合)代替