2 строки в 1-байтовый массив - PullRequest
0 голосов
/ 10 июля 2020

Мне нужно знать, как преобразовать две строки в однобайтовый массив. Например, мне нужно взять два значения numeri c, используя два Edittext, где одно - 850011, а другое - 1005.

Мне нужно поместить это в однобайтовый массив, чтобы байтовый массив автоматически стал что-то вроде ниже, если я сделаю это вручную:

byte[] data = new byte[5];
data[0]=(byte)0x85;
data[1]=(byte)0x00;
data[2]=(byte)0x11;
data[3]=(byte)0x10;
data[4]=(byte)0x05;

Как сделать это надежным?

1 Ответ

1 голос
/ 10 июля 2020

Вы можете попробовать использовать что-то вроде:

public  byte[] convert(String a, String b) {
   int radix = 16; //for hexadecimal conversion
   //int radix = 10; //for decimal conversion

    String str = a + b;
    byte[] result = new byte[str.length() / 2];

    for (int i = 0; i < result.length; i++) {
        int index = i * 2;
        int j = Integer.parseInt(str.substring(index, index + 2), radix);
        result[i] = (byte) j;
    }
    return result;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...