我在这里遇到了相当多的问题,我认为这是因为我不太了解如何使用Java提供的API。如何同时使用ByteArrayOutputStream和DataOutputStream(Java)
我需要编写一个int
和byte[]
成byte[]
我想用一个DataOutputStream
解决数据与writeInt(int i)
和write(byte[] b)
写作,并能够将它放入一个字节数组,我应该使用ByteArrayOutputStream
方法toByteArray().
据我所知,这个类使用的包装图案,所以我有两个选择:
DataOutputStream w = new DataOutputStream(new ByteArrayOutputStream());
或
ByteArrayOutputStream w = new ByteArrayOutputStream(new DataOutputStream());
但在这两种情况下,I “松散” 的方法。在第一种情况下,我无法访问toByteArray()
方法,而在第二种情况下,我无法访问writeInt()
方法。
我应该如何一起使用这个类?
我一直在想,是真的有我的理由刷新包裹'ByteArrayOutputStream'? – Justin 2010-06-06 14:49:25
有没有,但你永远不知道包装的行为。它实际上可以缓冲一些东西,所以我通过习惯刷新包装:)。如果它是一个传递包装,它不应该伤害。 – 2010-06-06 17:37:30
你可以声明byteArray变量吗?和什么其实w.write(byteArray);做? – 2012-06-30 01:49:21