[Java] Como converter um array de bytes em String
Você tem um array de bytes (byte[]
) com você e precisa transformá-lo em texto?
Primeiro você precisa saber em qual encoding esse array de bytes se encontra. O mais comum é que seja UTF-8.
Neste caso a única coisa que você precisa fazer é criar um objeto String passando o array de bytes e o encoding utilizado (UTF-8). Veja o exemplo abaixo.
import java.io.UnsupportedEncodingException;
public class BytesParaString {
public static void main(String[] args) throws UnsupportedEncodingException{
byte[] bytes = new byte[]{116, 101, 120, 116, 111, 32, 116, 101, 115, 116, 101};
String texto = new String(bytes, "UTF-8");
System.out.println(texto);
}
}
Perceba que é necessário capturar a exception UnsupportedEncodingException
quando chamamos este construtor da classe String.
O array de bytes 116, 101, 120, 116, 111, 32, 116, 101, 115, 116, 101
representa o texto texto teste
.
Logo, ao executarmos este código obtemos a sequinte saída:
Gostou? Alguma dúvida? Utilize a área de comentários aqui em baixo.