【发布时间】:2011-11-26 07:03:02
【问题描述】:
您好,我需要创建几个大型 CSV 文件,这些文件的顺序可能是 200 万。所以我想知道如何有效地做到这一点..因此我脑海中浮现的问题很少
1 .当我们通过 BufferedWriter 写入文件时,我们应该多久刷新一次?但是我认为 bufferedWriter 维护自己的缓冲区,一旦缓冲区已满,它就会自动刷新它,如果是这种情况,那么为什么还有 flush 方法呢??
-
因为我要创建的文件会很大。所以当我开始写入文件时,文件会自动提交到磁盘吗? (在调用 writer.close() 之前)或整个文件保留在主内存中,直到我关闭 writer?
- 提交是指已写入部分的任何部分都不在主内存中,即它已准备好进行 GC
【问题讨论】:
-
数据从何而来?另一个基于磁盘的存储,通过网络还是来自内存?
-
数据来自数据库,需要生成少量业务验证和处理这些文件