0

わかりましたので、私がしたいのは、バイトを dataouptustream に書き込み、その出力ストリームを送信することです。私はそれをうまくやることができます。私が問題を抱えているのは、バイト内に個々のビットを書き込む方法です。たとえば、次のようになります。

LSB (0) を 1 として書き込み、残りの 1 ~ 7 ビットの値を 100 にする必要があります。または、最初の 2 LSB (0 ~ 1) を 3 にして残りを 5 にしたい場合もあります。これはこれまでの私の試みです (これまでのところ、このコードをまだ実際にテストしていません)。

ByteArrayOutputStream baos=new ByteArrayOutputStream();
DataOutputStream daos=new DataOutputStream(baos);
//LSB should be 0, the remaining should be the value 50
daos.writeByte(50 >>> 1);
//2 LSBs should be 2 (10) and the remaining should be 100
daos.writeByte(Integer.parseInt(Integer.toBinaryString(2) + Integer.toBinaryString(100)));
daos.close();
message = baos.toByteArray();

私は正しい軌道に乗っていますか?これを行うための本当に単純で簡単な方法はありますか? 私はこれをかなり多くしなければならないので、これらのバイトを必要に応じて操作する方法を本当に理解する必要があります.

4

1 に答える 1