次の擬似コードが与えられます。与えられたデータをどのように読み込むのですか
質問する
1005 次
3 に答える
3
DataInputStreamを使用して、生活を楽にしましょう。
DataInputStream in = new DataInputStream(socket.getInputStream());
short myShortStreamSize = in.readShort();
byte[] payload = new byte[myShortStreamSize];
in.readFully(payload);
于 2013-02-08T16:32:24.213 に答える
1
Socket
方法がありgetInputStream()
ます。返されたバイトを に使用し、それをペイロード サイズを表す int/long に変換してから、ペイロード自体を別のより大きな にInputStream
読み込みます。myShortStreamSize
byte[]
new byte[payloadSize]
于 2013-02-08T16:26:26.780 に答える
0
あなたはJBBPを試すことができます
@Bin class Struct { byte [] payload; }
@Bin class ParsedStream { Struct [] structs; }
ParsedStream parsed = JBBPParser.prepare("structs[_] { ushort size; byte [size] payload; }").parse(theInStream).mapTo(ParsedStream.class);
于 2014-08-15T09:08:06.887 に答える