0

誰かが私を助けてくれることを本当に願っています。

byte[]ダイのバイト数を表示する必要があるシングルがありbyte[]ます。現在、値が 255 を超えています。大きな数値を表示/入力する方法はありますか?

4

3 に答える 3

3

1 バイトは 0 から 255 までの値を保持します。299 を表すには、2 バイトを使用するか、バイト内の値が公称値を超えると解釈されるスキーム (受信側も使用する必要があります) を使用する必要があります。可能な値の範囲を広げるための値。たとえば、値は長さ / 2 である可能性があります。これにより、0 ~ 510 の長さが許可されますが、偶数の長さしか許可されません (奇数の長さの配列にはパッド バイトが必要になります)。

于 2013-02-21T21:03:13.977 に答える
1

255 より大きい数値を表すために 2 バイト (またはそれ以上) を使用できます。それでよろしいですか?

short value = 2451;
byte[] data = BitConverter.GetBytes(value);

外部システムとデータを交換するためにこれが必要な場合は、Endiannessについて読むことを忘れないでください。

于 2013-02-21T20:57:52.700 に答える
0

それは、あなたが良いアプローチと考えるものに依存します。何らかの形式のエンコードを実行して、2 バイト以上のデータを格納できるようにすることができます。つまり、おそらく最初のバイトを 0xFF に設定すると、次のバイトをそのデータの一部と見なすことになります。 [0x01,0x0A,0xFF,0x0A] の 3 つの値として解釈されます。[1,10,265]

于 2013-02-21T21:03:21.473 に答える