Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
BufferedStream链接Scala(或Java)_Java_Scala_Bufferedinputstream - Fatal编程技术网

BufferedStream链接Scala(或Java)

BufferedStream链接Scala(或Java),java,scala,bufferedinputstream,Java,Scala,Bufferedinputstream,假设我必须写入一个二进制文件。我可以使用以下代码 val fos = new FileOutputStream("fileName") 然后使用 fos.write(bytes) 将其与缓冲流链接始终是一个好主意吗?例如: val fos = new FileOutputStream("FileName") val bos = new BufferedOutputStream(fos) 同样的规则是否适用于文件输入流 最后是否需要关闭fos(在链接版本中) 编辑:找到最后一个问题的答案。如

假设我必须写入一个二进制文件。我可以使用以下代码

val fos = new FileOutputStream("fileName")
然后使用

fos.write(bytes)
将其与缓冲流链接始终是一个好主意吗?例如:

val fos = new FileOutputStream("FileName")
val bos = new BufferedOutputStream(fos)
同样的规则是否适用于
文件输入流


最后是否需要关闭
fos
(在链接版本中)


编辑:找到最后一个问题的答案。如前所述,无需关闭内部流

取决于要写入的数据类型。BufferedStream用于不希望为写入的每个字节调用底层系统(执行实际写入的系统)时,而FileOutputStream是指当您想写入原始字节时,例如在写入图像时使用。

在上面的示例中是否需要关闭
fos
?根据javadoc,关闭
bos
将关闭
fos
。看见