2

我遇到FileBackedOutputStream了库中的类,Google Guava想知道它是否适合用作一种缓冲区:每天一次,我的 webapp 中的一个进程会生成数万行(每行包含大约 100 个字符),然后将其上传到文件在 FTP 服务器上。我正在考虑使用一个FileBackedOutputStream对象首先将所有这些字符串写入,然后使用 FTP 客户端访问它们FileBackedOutputStream.getSupplier().getInput(),它返回一个InputStream. 这将是一个正确的用例FileBackedOutputStream吗?

4

1 回答 1

3

是的,我认为这对于FileBackedOutputStream. 但是,我认为FileBackedOutputStream最好将它与大小可能有很大差异的数据一起使用......OutOfMemoryError如果您尝试将其全部读入内存,这可能会给您一个提示,您想切换到缓冲到文件。这是FileBackedOutputStream我认为真正闪耀的地方。我用它来缓冲上传的文件,我需要做几件事。

于 2011-01-27T15:06:43.253 回答