将浮点数组写入文件

时间:2017-02-25 18:11:37

标签: java file

我正在尝试将浮点数的arraylist存储到文件中 我尝试使用DataOutputStream写入文件,它的工作正常,只是数据不是以人类可读的格式写的。
我知道我必须使用print writer以文本格式写入数据,但它不支持编写浮点数。

PrintWriter writer = new PrintWriter("filename.txt");
writer.write(naiveNearestPoints(points.get(i))); //Gives an error
writer.println(naiveNearestPoints(points.get(i)));//**updated** correct way to do it

还有其他方法可以用可读格式将浮点写入文件吗?

2 个答案:

答案 0 :(得分:2)

PrintWriter支持编写浮点值:print(float)print(double)

答案 1 :(得分:0)

这是什么意思?

  

它不支持编写浮点

PrintWriter实际上可以是print(float)print(double)

如果这不适合你,那么如果你能System.out.print浮点数,你可以通过将System.out重定向到File来轻松写入文件。

例如

File out = new File("out.txt");
try {
    System.setOut(new PrintStream(out));
} catch (Exception e) {
     e.printStackTrace();
}

// loops over list, print with System.out.print