Foros del Web » Programación para mayores de 30 ;) » Java »

¿como decodificar?

Estas en el tema de ¿como decodificar? en el foro de Java en Foros del Web. Hola amigos del foro: En un campo de una tabla de mi base de datos "PostgreSQL" almaceno un valor codificado, por ejemplo el valor almacenado ...
  #1 (permalink)  
Antiguo 06/04/2009, 16:34
rls
 
Fecha de Ingreso: marzo-2008
Mensajes: 48
Antigüedad: 16 años, 1 mes
Puntos: 0
¿como decodificar?

Hola amigos del foro:

En un campo de una tabla de mi base de datos "PostgreSQL" almaceno un valor codificado, por ejemplo el valor almacenado es Dise\u00F1o que en texto normal es Diseño. Pero ese el problema que tengo porque al querer mostrarlo en mi pagina web sale tal y como esta almacenado en la base de datos Dise\u00F1o y yo quiero que se muestre Diseño. El valor lo estoy mostrando en un <td> de un <table>.

Como puedo solucionarlo?

Agradesco de antemano su colaboración
  #2 (permalink)  
Antiguo 07/04/2009, 06:15
MIRL27
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ¿como decodificar?

Debes transformar ese caracter de Unicode (\u00F1) a UTF-8 (&ntilde) o el formato que uses en la web, por ejemplo, si usas Unicode, tendrás que cambiarlo a ñ

Desconozco si hay algún método que lo haga directamente pero supongo que podrías hacerlo mediante expresiones regulares para localizar estos caracteres y reemplazarlos (\u por &# y luego los otros cuatro caracteres, 00f1 en este caso, pasarlos a decimal) usando replaceAll, de la clase String.

Por ahí he visto esta línea en PERL que hace justo lo contrario, por si te sirve de ayuda:
Código:
perl -pe 'BEGIN {sub java ($) {sprintf "\\u%04x", $_[0]}}
s/&#x([0-9A-Fa-f]+);/java hex $1/ge; s/&#(\d+);/java $1/ge'
Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:01.