我使用的是 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());
}
最佳答案
我的猜测是您从未关闭或刷新过Formatter
,因此任何缓冲的输出都将丢失。
您应该在 finally
block 中关闭它。
关于java - 格式化程序格式化方法输出限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10216676/