当前位置: 首页 > 面试题库 >

将byte []附加到另一个byte []的末尾

何正德
2023-03-14
问题内容

我有两个byte[]长度未知的数组,我只想将一个附加到另一个的末尾,即:

byte[] ciphertext = blah;
byte[] mac = blah;
byte[] out = ciphertext + mac;

我曾尝试使用,arraycopy()但似乎无法使其正常工作。


问题答案:

使用System.arraycopy(),应类似于以下内容:

// create a destination array that is the size of the two arrays
byte[] destination = new byte[ciphertext.length + mac.length];

// copy ciphertext into start of destination (from pos 0, copy ciphertext.length bytes)
System.arraycopy(ciphertext, 0, destination, 0, ciphertext.length);

// copy mac into end of destination (from pos ciphertext.length, copy mac.length bytes)
System.arraycopy(mac, 0, destination, ciphertext.length, mac.length);


 类似资料:
  • 问题内容: 我想更改字节数组中的值以在MSB中放入较长的时间戳值。有人可以告诉我最好的方法是什么。我不想一点一点地插入值,我认为这是非常低效的。 我想要的是这样的: 这样是可能的。在此字节数组中编辑/插入值的最佳方法是什么。由于字节是原始数据,我不认为有一些直接的实现可以利用吗? 编辑: 似乎比快,所以用它替换上面的代码。如果有误,请纠正我。 问题答案: 有多种方法可以做到这一点: 使用(最佳选择

  • 问题内容: 我需要将Java BigInteger实例转换为以字节为单位的值。从API中,我获得了此方法,该方法返回一个byte [],其中包含此BigInteger的二进制补码表示形式。 因为我所有的数字都是正的128位(16字节)整数,所以我不需要2的补码形式,即给我128位+符号位(129位)… 有没有一种方法可以直接从BigInteger获取标准(无2的补码形式)表示形式? 如果不是,我如

  • 我目前正在尝试创建一个小菜单,它可以在用户滚动时改变位置。我提出了一种样式-http://jsfiddle.net/piedoom/s8tyn/ 不过,这看起来很难看。我如何将每个文本div下面的每个点居中?我尝试过类似这样的操作,但没有效果。

  • 问题内容: 我正在尝试从URL(带有java包 **java.net.URL** )读取图像 到byte []。“所有内容”都可以正常工作,只不过不是从流中精心地读取内容(图像已损坏,它不包含所有图像数据)…字节数组一直保存在数据库(BLOB)中。我真的不知道正确的方法是什么,也许你可以给我一个小贴士:) 这是我的第一种方法(代码格式化,删除了不必要的信息…): 我的第二种方法是这种方法(您将看到

  • 问题内容: 我很好奇为什么Golang不提供方法。从性能的角度来看,是否不会复制输入参数并增加成本(尽管由于字符串是不可变的,所以这看起来很奇怪,为什么要复制它们)? 我是Go的新手,不胜感激。 问题答案: 不是函数(或方法)调用,而是类型转换。 类型转换“本身”不会复制该值。但是将a转换为a 确实需要,因为结果字节片是 可变的 ,并且如果不进行复制,则可以修改/更改 不可变 的值(的内容),它必

  • 问题内容: 我的数据库表中有一个blob列,必须在Java程序中将其用作映射,并使用此数据将其转换为或。但是我不知道这样做的时候内部会发生什么。有人能简要解释一下我进行此转换时发生了什么吗? 问题答案: 您可以按以下方式创建和使用字节数组I / O流: 假设你正在使用JDBC驱动程序实现了标准的JDBC Blob接口 (不是所有的事),你可以 同时 连接或使用到BLOB 和方法1,您也可以获取和设