我使用的是Windows7,我的格式化程序对象只想写出大约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());
}发布于 2012-04-19 03:40:08
我的猜测是,您从未关闭或刷新过Formatter,因此任何缓冲的输出都将丢失。
您应该在finally块中关闭它。
https://stackoverflow.com/questions/10216676
复制相似问题