Hola,
Si de pronto han tenido un inconveniente entre dos componentes que se comunican y estos dos tienen un formato de codificación diferente, no se reconocen ciertos caracteres. Para solucionar este inconveniente, se puede utilizar el siguiente bloque de código:
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
// Your code here!
// String dato = "informe";
String dato = "35004|31200129|3199|42263251|CARMIÑA|SOLANO|ZUÑIGA|45542502|13001|PIEDRA BOLIVAR|13001|3135831756|3a33f8ffb855bebabebb|31200129|3199@00165100";
//String dato2 = new String(dato.getBytes("ISO-8859-1"), "UTF-8");
String dato2 = new String(dato.getBytes("ISO-8859-1"), "ISO-8859-1");
System.out.println(dato2);
}
}
resultado: 35004|31200129|3199|42263251|CARMIÑA|SOLANO|ZUÑIGA|45542502|13001|PIEDRA BOLIVAR|13001|3135831756|3a33f8ffb855bebabebb|31200129|3199@00165100
Descripción:
Este método se encarga de realizar una conversión de formatos de codificación, es decir para pasar una cadena de UTF8 a ISO 8859-1 se debe ser redundante en como obtener los bytes y en que convertirlos, por que si los obtienes en UTF y los conviertes a ISO, generará un error con algunos caracteres.
Nota:
No se recomienda transcodificar de UTF8 a ISO 8859-1 porque UTF8 abarca una gran cantidad de caracteres (casi todos), por lo contrario ISO 8859-1 es limitado, no reconoce ciertos caracteres. Pero si se recomienda realizar la transcodificación de ISO 8859-1 a UTF8.
Fuente:
LMBP
0 comentarios :
Publicar un comentario