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

Convertir string a unicode

Estas en el tema de Convertir string a unicode en el foro de Java en Foros del Web. Hola, quisiera saber como puedo haer lo siguiente: Tengo un string con un valor que representa un caracter (por ejemplo "AE") y quiero insertarlo en ...
  #1 (permalink)  
Antiguo 14/08/2009, 01:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 34
Antigüedad: 19 años, 3 meses
Puntos: 1
Convertir string a unicode

Hola, quisiera saber como puedo haer lo siguiente:

Tengo un string con un valor que representa un caracter (por ejemplo "AE") y quiero insertarlo en un StringBuilder ( StringBuilder.append('\u00AE') ).
He probado con conversiones de tipo, pero nada sale bien.
  #2 (permalink)  
Antiguo 14/08/2009, 05:15
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Convertir string a unicode

No entiendo bien lo que quieres hacer, quizás te ha faltado explicarte un poco más. Si lo que quieres es tener un texto completo que muestre el unicode pero con formato String, puedes hacer esto:

public class Sbuilderwsb {

public static void main(String args[]) {
Sbuilderwsb sb = new Sbuilderwsb();
sb.run();
}

public void run() {
// Dos ultimos caracteres unicode
String ae = new String("AE");
// en caso de querer sacarlo de otro sitio se tendría que pasar de otra manera.
String unisec = new String("/u00");
StringBuilder sbf = new StringBuilder();
sbf = sbf.append(unisec);
sbf = sbf.append(ae);

System.out.println(sbf);

}
}

Si lo que buscas es que muestre el formateo unicode del resultado, es decir, para /u00AE muestre ®, entonces échale un vistazo a esto a ver si te da una idea.

http://www.java2s.com/Code/Java/Deve...terUnicode.htm
  #3 (permalink)  
Antiguo 14/08/2009, 08:22
 
Fecha de Ingreso: febrero-2005
Mensajes: 34
Antigüedad: 19 años, 3 meses
Puntos: 1
Respuesta: Convertir string a unicode

Me explico un poco mejor.

Estoy haciendo una aplicación que se conecta a un determinado servidor. El servidor manipula los datos en hexadecimal. En una petición determinada, se necesita enviar el valor 0x9d. Para montar la trama, uso un stringbuilder, asi que, por ejemplo, hago un stringbuilder.append( "\u009d" ), incluso he probado con stringbuilder.append( (char)157 ) y otras combinaciones, pero según el sniffer, lo que se está enviando es un 0x3f.

Sospecho que es algo de que va con 8 bits con signo y al pasar de 127 truca el número, pero no lo termino de entender.
Lo que quiero es poder enviar el carácter que represente el valor 0x9d.
  #4 (permalink)  
Antiguo 14/08/2009, 11:49
 
Fecha de Ingreso: febrero-2005
Mensajes: 34
Antigüedad: 19 años, 3 meses
Puntos: 1
Respuesta: Convertir string a unicode

Ya veo que esto es algo que está documentado, pero no veo una solución para el caso de socket, asi que os pongo un ejemplo más clarito

conexion = new Socket("server", 0000);
escritura = new PrintWriter( conexion.getOutputStream(),true);
escritura.write(0x9d);

al final lo que envía es 0x3f, debido a la codificación.

Aquí hablan sobre el tema, pero lo resuelven para ficheros, para sockets no lo veo claro.
forums.sun.com/thread.jspa?threadID=520074&tstart=53384
  #5 (permalink)  
Antiguo 14/08/2009, 12:20
 
Fecha de Ingreso: febrero-2005
Mensajes: 34
Antigüedad: 19 años, 3 meses
Puntos: 1
Respuesta: Convertir string a unicode

Solucionado con DataOutputStream, mandando el string con writeBytes.
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 02:45.