大家好,我在CS的第二学期,我们使用InputStreams和OutputStreams处理文件IO的主题,一切都相对简单,直到这个主题为我。我对BufferedOutputStream类有点困惑。据我所知,它将数据存储在指定大小的缓冲区中,然后一次性写入,比逐字节流更有效。我不明白的是,与DataInputStream不同,DataInputStream有编写特定基元的方法,我只能编写字节数组。我如何使用BufferedOutputStream存储int,long,double等原语。提前谢谢你们!
答案 0 :(得分:0)
您可以使用guava库将primitves转换为byteArray。它的语法非常甜美:
byte[] bytearray = Ints.toByteArray(201);
其中201
是您希望使用的原始整数。从现在开始byteArray
,您可以在BufferedOutputStream.
答案 1 :(得分:0)
在其周围包裹DataOutputStream
。