Преобразование байтового массива, содержащего символы ASCII, в строку

У меня есть байтовый массив, состоящий из символов ASCII, которые я хочу преобразовать в String. Например:

byte[] myByteArray = new byte[8];
for (int i=0; i<8; i++) {
    byte[i] = (byte) ('0' + i);
}

myByteArray должен содержать строку "12345678" после цикла. Как получить эту строку в переменной String?

Спасибо!

Ответ 1

Использование

new String(myByteArray, "UTF-8");

Класс String предоставляет конструктор для этого.

Боковое примечание. Вторым аргументом здесь является CharSet (байтовая кодировка), с которой следует обращаться осторожно. Подробнее здесь.

Ответ 2

String aString = new String(yourByteArray);

или

String aString = new String(yourByteArray, "aCharSet"); 
//Replacing "aCharSet" with the appropriate chararacter set

Easy См. документы