0

我有一个长度为 14 的字节数组。我可以将第一个两个元素合并为一个,依此类推,使其大小为 7?即 <{730C5454000160}> 应该看起来像

<{73,0C,54,54,00,01,60}>.

或者,如果没有,我有一个字符串“730C5454000160”,我需要它作为字节数组

<{73,0C,54,54,00,01,60}>.

请哪位大神帮帮我,谢谢。

4

1 回答 1

3

让 JDK 帮助您:

byte[] bytes = new byte[7];
System.arraycopy( ByteBuffer.allocate(8).putLong( Long.parseLong( s, 16 ) ).array(), 1, bytes, 0, 7);

下面是一些测试代码:

public static void main( String[] args ) {
    String s = "730C5454000160";

    byte[] bytes = new byte[7];
    System.arraycopy( ByteBuffer.allocate(8).putLong( Long.parseLong( s, 16 ) ).array(), 1, bytes, 0, 7);

    System.out.println( Arrays.toString(bytes ));
}

输出:

[115, 12, 84, 84, 0, 1, 96]
于 2012-06-20T06:58:33.287 回答