为什么要在writeToFile调用中打开和关闭流?您不应该在for循环之前在writeFooter()中打开流,在编写代码周围放置一个try块,然后在finally节中关闭它们。
以我的方式来看,您首先在writeFooter中打开了流,然后您编写了printer.println(“Проданныетовары:”);,然后for循环的第一次迭代调用writeToFile,将再次打开未关闭的流,即肯定会覆盖第一行。
打开和关闭用于写入一行的文件效率太低。
你需要类似的东西
writeFooter(...) { try { openStreams(); writeToFile(); } finally { closeStream(); }}
如果writeToFile简单地写入,则不会打开或关闭流,而closeStream安全地关闭流,即检查null等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)