Android - String to byte array

   
Vista:

String to byte array

Publicado por jvb2008 (5 intervenciones) el 08/04/2016 09:44:43
Hello all,

I need to convert a string into byte array like this:
For example, having this string:

1
String s = "80008100FFFFFFFF";

I would like to get the following:

1
2
3
4
5
6
7
8
9
10
ArrayList<Byte> data = null;
 data = new ArrayList<Byte>();
 data.add((byte) (0x80));
 data.add((byte) (0x00));
 data.add((byte) (0x81));
 data.add((byte) (0x00));
 data.add((byte) (0xFF));
 data.add((byte) (0xFF));
 data.add((byte) (0xFF));
 data.add((byte) (0xFF));

How can I solve this?

Thanks so much!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

String to byte array

Publicado por Yamil Bracho (68 intervenciones) el 08/04/2016 16:27:00
You would need to convert the hex digits to decimal..A method like this

1
2
3
4
5
6
7
8
9
ublic static byte[] hexStringToByteArray(String s) {
    int len = s.length();
    byte[] data = new byte[len / 2];
    for (int i = 0; i < len; i += 2) {
        data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
                             + Character.digit(s.charAt(i+1), 16));
    }
    return data;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar