0

String を 2 つの異なるバイトを持つバイト配列に変換しようとしています。例:String s1 = " 055E"これを次のように変換する必要があります

byte b1 = Integer.parseInt(05,16);  -  1byte

byte b2 = Integer.parseInt(5E,16);   -  1byte

最後に、値b1、b2を持つバイト配列が必要です。

byte[] b = {b1, b2};    

これに関する助けをいただければ幸いです。前もって感謝します

4

2 に答える 2

2

これを試して:

String s1 = " 055E";
s1 = s1.trim();
byte[] b = {
    (byte) Integer.parseInt(s1.substring(0, 2), 16),
    (byte) Integer.parseInt(s1,substring(2), 16)
}
于 2012-06-27T22:58:38.197 に答える
-1

まず、配列に十分なメモリを割り当てます。次に、文字のすべてのペアをループして、それらをバイトに変換します。結果を配列に格納します。

s = s.trim();
byte[] b = new byte[s.length()/2];

for(int i = 0; i < s.length(); i+= 2) {
    b[i/2] = Byte.parseByte(s.substring(i,i+2),16);
}
于 2012-06-27T22:58:37.030 に答える