Этот вопрос может показаться уникальным, но у меня возникают трудности с его решением.Java, как получить набор байтов из байтового массива
У меня есть байтовый массив (DW на строку) и пытается получить значение байта для каждых 9 байтов. Вот как массив выглядит следующим образом:
0 1 2 3
4 5 6 7
8| 9 10 11
12 13 14 15
16 17| 18 19
20 21 22 23
24 25 26| 27
28 29 30 31
32 33 34 35|
.......
Здесь определенная функция, которую нужно использовать, чтобы получить значение из приведенного выше патента:
getValue(int DWOffset, int highBit, int lowBit)
//DWOffset indicates the row of the data.
//highBit indicates the ending bit
//lowBit indicates the starting bit
Мой вопрос состоит в том, чтобы каждый 9 байтов из данных (где | появляется), используя для цикла? Длина данных может быть обнаружена с помощью
data.getLength(); //which returns the total number of bytes in the data
До сих пор, я могу получить значение на первых двух подряд:
for(int i = 0; i < data.getLength()/(4*2); i++){
getValue(i*2, 31, 0); //DW i
getValue(i*2 + 1, 31, 0); //DW i+1
}
Не ясно. Что такое DW? Что представляют эти данные? Можете ли вы более подробно объяснить API 'getValue()', который вы должны использовать? Или укажите ссылку на какую-либо документацию? Эти встроенные комментарии не очень помогают. Вы хотите получить один байт из каждой группы из девяти байтов? Или получить все байты, в кусках из девяти? – erickson