Google プロトコル バッファを使用しています。メッセージの前にサイズを 16 ビット int として付ける必要があります。16 ビット int を書き込むプロトコル バッファ メソッドが見つかりませんでした
私はJavaの知識がほとんどないC ++の男です。
これまでのところ、次を使用しています:
// protomessage is a protocol buffer message
// assuming protomessage.toByteArray().length < short.MAX_value
ByteArrayOutputStream rawOutput = new ByteArrayOutputStream();
CodedOutputStream output = CodedOutputStream.newInstance(rawOutput);
ByteBuffer b = ByteBuffer.allocate(2);
b.order(ByteOrder.LITTLE_ENDIAN);
b.putShort((short) (protomessage.toByteArray().length));
output.writeRawBytes(b.array())
それは正しい方法ですか?(正直、気持ち悪い)
ありがとうございました