我在Windows 7上,而我的Formatter对象只想写出大约2500个值来存档。之后,文件在数字中间突然切断,之后就是空的。我知道while循环正在执行完整的4200次,并且iter.next()正在为所有这些迭代返回正确的值,因为我在它发生时将它们打印出来。然而,实际写入文件部分在大约第2500次写出之后结束。有任何想法吗?谢谢! -Ryan
try{...
output = new Formatter("C:\\users\\ryans\\desktop\\IntelMA.tsv");
...
}
...
Iterator<Double> iter = MA.getMovingAverage().iterator();
while (iter.hasNext()){
output.format("%f\t", iter.next());
}
答案 0 :(得分:1)
我的猜测是你从未关闭或刷新Formatter
,因此任何缓冲输出都将丢失。
您应该在finally
块中关闭它。