我怎么知道DataInput大小?

时间:2011-10-02 23:57:17

标签: java

public void readFields(DataInput in) throws IOException{
    //How can I set up the byteArray size here?
    //DataInput does not have available() or length() method.
    byte[] videoByteArray = new byte[size];
    in.readFully(videoByteArray);
}

我如何知道DataInput大小?在将所有数据读入字节数组之前,我需要先设置大小。

2 个答案:

答案 0 :(得分:1)

如果要发送一部分数据,了解大小的最简单方法是首先在DataOutput流中发送它。否则,您必须假设您想要读取所有数据,直到流结束(并且您无法发送任何其他内容)

答案 1 :(得分:0)

DataInput是用于读取流数据的接口,即,当预先知道长度时。我们的想法是在循环中将数据块读入字节数组,直到结束,由EOFException指示。