Tengo un montón de personajes con que se ve algo como esto:Java convertir flujo de caracteres en la cadena humana "legible"
Комуникационна кабелна система
ya veces tengo una mezcla de esta manera:
Généralités
El primero se traduce en:
К о м у н и к а ц и о н н а к а б е л н а с и с т е м а
y la segunda a:
G é n é ralit é s
puedo ver esto usando un navegador y colocarlos en el cuerpo.
Pero, ¿cómo puedo hacer que Java salga como los caracteres "reales"? ¿Cómo se llama la codificación anterior?
he intentado un par de cosas, y por último esta (que no funcionaba):
import java.nio.charset.*;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
List<String> lst = new ArrayList<String>(); lst.add("К"); lst.add("о");
for (String s : lst) {
Charset utf8charset = Charset.forName("UTF-8");
Charset iso88591charset = Charset.forName("ISO-8859-1");
ByteBuffer inputBuffer = ByteBuffer.wrap(s.getBytes());
// decode UTF-8
CharBuffer data = utf8charset.decode(inputBuffer);
// encode ISO-8559-1
ByteBuffer outputBuffer = iso88591charset.encode(data);
byte[] outputData = outputBuffer.array();
System.out.println (new String(outputData))
}
Es HTML-escapó. –
se llaman entidades. si busca la conversión de entidad a unicode, puede encontrar lo que está buscando de esa manera – dldnh
@dldnh ¡gracias por aclarar! no es lo más fácil para buscar en la web :) – momomo