Java BufferedOutputStream 与 OutputStream

标签 java outputstream

BufferedOutputStream 和 OutputStream 有什么区别。

我读到的是,bos 对于大文件来说比 os 更快更好,但我不太明白为什么。希望获得有关这两个主题的一些澄清和见解。

最佳答案

由于 IO 操作的成本较高,BufferedOutputStream 首先将它们写入缓冲区,然后将 block 写入底层 OutputStream。 BufferedOutputStream 使用装饰器模式,在运行时将额外的责任附加到 OutputStream。

BufferedInputStream 也是如此,它读取 block 中的字节并将它们放入缓冲区中。当实际的读取操作发生时,它会从该缓冲区读取,而不是从底层的InputStream(如磁盘)读取,后者成本更高

关于Java BufferedOutputStream 与 OutputStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30283511/

相关文章:

java - Tomcat启动后调用构造函数

java - 在 Java/Spring/JSP 中绘制图像

php - PHP 中用于增加页面加载时间的“输出缓冲”

java.net.UnknownHostException : Unable to resolve host "s3-ap-northeast-1.amazonaws.com": No address associated with hostname

java - 通过Servlet的OutputStream破坏pdf

java - 提供连接的 OutputStream 和 InputStream 的最佳实践

java - 无法使字符串相等方法和将字符串转换为数字一起工作。

java - 如何知道在 Spring 2.0 Controller 方法中当前 servlet 上下文中映射了哪些 URL?

java - 将文件从一个位置复制到另一个位置

java - 使用java后端Ajax文件上传?