最新消息:20210917 已从crifan.com换到crifan.org

【已解决】Android中byte数组byte[]实现如何拷贝

Android crifan 11042浏览 0评论

【问题】

android中有两个buffer,想要实现拷贝:

void xxx(byte[] buffer, int writeLength){
    final byte[] tmpBuf = new byte[writeLength];
}

想要把buffer中长度writeLength拷贝到新的tmpBuf中。

【解决过程】

1.网上搜了:

android byte buffer copy

参考了:

ByteBuffer | Android Developers

java – Copy several byte arrays to one big byte array – Stack Overflow

nio – Deep copy duplicate() of Java’s ByteBuffer – Stack Overflow

结果很是失望:

java中竟然没有方便好用的,直接实现byte数组拷贝的函数。。。

2.试试那个System.arraycopy:

   final byte[] tmpBuf = new byte[writeLength];
   System.arraycopy(buffer, 0, tmpBuf, 0, writeLength);

结果:

是可以的:

java use system.arraycopy can copy byte array

【总结】

java中,实现byte[]的拷贝,可以用

System.arraycopy

即可。

转载请注明:在路上 » 【已解决】Android中byte数组byte[]实现如何拷贝

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
89 queries in 0.194 seconds, using 20.15MB memory