Удаление первых 16 байтов из массива байтов

в Java, как мне взять массив byte[] и удалить первые 16 байтов из массива? Я знаю, что мне, возможно, придется сделать это, скопировав массив в новый массив. Любые примеры или помощь будут оценены.

3 ответов


в библиотеке Java уже есть метод для этого:

Arrays.copyOfRange(byte[] original, int from, int to)

byte[] a;

...

if(a.length > 1) {
    byte[] newA = new byte[a.length-2];
    for(int i = 2; i < a.length; ++i)
        newA[i-2]=a[i];
}

void remove(byte[] b)
{
    for(i=16;i<b.length;i++)
    {
        a[i-16]=b[i];
        Process... arrays
    }
}