0

この形式でデータを送信すると、Java ベースの COM プログラムで作業しているため、次のように動作します。

serialPort.writeBytes( new byte[] { (byte)3, (byte)0, (byte)0, 
                                    (byte)0, (byte)4, (byte)5} );

しかし、私が従うときはそうしません。どこが間違っていますか?

byte[] bcode = null;
bcode[0] = (byte)3;
bcode[1] = (byte)0;
bcode[2] = (byte)0;
bcode[3] = (byte)0;
bcode[4] = (byte)4;
bcode[5] = (byte)5;
serialPort.writeBytes(bcode);
4

1 に答える 1

6

2 番目の例では、配列を作成したのではなく、割り当てましたnull。存在しない配列の配列要素を参照することはできません。あなたができる

byte[] bcode = new byte[6];

これにより、6 バイトのスペースを持つ配列が作成されます。次に、値を個別に割り当てます。

于 2013-03-08T00:32:02.390 に答える