我遇到FileBackedOutputStream
类Google Guava
库,并想知道它是否适合用作缓冲区类型:每天一次,我的web应用程序中的进程会生成数以万计的行包含约100个字符),然后上传到FTP服务器上的文件。我正在考虑使用FileBackedOutputStream
对象首先将所有这些字符串写入,然后使用FileBackedOutputStream.getSupplier().getInput()
访问我的FTP客户端,它将返回InputStream
。这是否是FileBackedOutputStream
的正确用例?FileBackedOutputStream用例(番石榴)
2
A
回答
2
是的,我认为这将是一个可接受的用例FileBackedOutputStream
。不过,我认为FileBackedOutputStream
最适合用于数据可能相差很大的数据......对于少量数据可以适应内存而不会出现问题的情况下,您只需将它们缓存在内存中,但对于大量数据可能会给你一个OutOfMemoryError
如果你试图把它全部读到内存中,你想切换到缓冲到一个文件。这是我认为FileBackedOutputStream
真正闪耀的地方。我用它来缓冲我需要做的几件事情上传的文件。
相关问题
- 1. 番石榴散列用例
- 2. Floats.tryParse()番石榴
- 3. 番石榴映射
- 4. 番石榴和javafx
- 5. 番石榴表ConcurrentModificationException
- 6. 番石榴资源
- 7. 番石榴入门
- 8. ClassNotFoundException的番石榴
- 9. Java番石榴CartesianProduct
- 10. 番石榴功能
- 11. 番石榴和Weblogic:ClassNotFoundException
- 12. 使用番石榴表
- 13. 如何利用番石榴
- 14. 番石榴 - 地图支持番石榴功能
- 15. 谷歌番石榴供应商示例
- 16. 番石榴库:有n个实例
- 17. 番石榴的HashBaseTable cellSet()
- 18. 不明白番石榴PrimitiveSink
- 19. 番石榴Multimap containsEntry问题
- 20. 番石榴表替代
- 21. 遍历表番石榴
- 22. 番石榴文件缓存
- 23. 番石榴:CharEscaper在哪里?
- 24. 番石榴Multimap列表
- 25. 在谷歌番石榴loadingCache
- 26. 子类番石榴的ImmutableSet
- 27. 番石榴多集和Multipmap
- 28. 番石榴,Files.readLines()和空白
- 29. 谷歌番石榴散列
- 30. HOWTO负载番石榴项
如果你想要一个InputStream,为什么不使用ByteArrayOutputStream和ByteArrayInputStream?它可能更简单,更高效。 – 2011-01-27 14:01:23