0

我在 Windows 7 上,我的 Formatter 对象只想将大约 2500 个值写入文件。之后,文件在数字中间突然被切断,之后就空了。我知道 while 循环正在执行完整的 4200 次,并且 iter.next() 正在为所有这些迭代返回正确的值,因为我在它发生时将它们打印出来。然而,实际写入文件部分在大约第 2500 次写出后结束。有任何想法吗?谢谢!-瑞安

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());
}
4

1 回答 1

1

我的猜测是你从来没有关闭或刷新过Formatter,所以任何缓冲的输出都会丢失。

你应该在一个finally块中关闭它。

于 2012-04-18T19:40:08.000 回答