如何使给定长度的字节数组由其他给定长度字节数组JAVA组成

时间:2012-12-01 12:07:53

标签: java arrays sockets byte

我想发送一个256字节长度的字节数组,它必须是一个字符串的128个字节,并且与另一个字符串的长度相同(长度仅用于测试目的)。

这是我的代码:

public void packetCompose(String user, String password) {
    //insert user in 128 bytes length, same with password 
    //and make a 256 length byte array to send
    byte[] userBytes = user.getBytes();
    byte[] passwordBytes = password.getBytes();
    byte[] buf = new byte[256];
}

我想userBytes长度为128个字节,即使字节数多于所需的字节数,并且与passwordBytes相同。然后将buf设置为userBytes,后跟passwordBytes。

有什么建议吗?提前谢谢

1 个答案:

答案 0 :(得分:3)

只需将字节复制到目标buf数组中。

System.arraycopy( userBytes    , 0, buf,   0, Math.min( userBytes.length, 128 ) );
System.arraycopy( passwordBytes, 0, buf, 128, Math.min( userBytes.length, 128 ) );