Foros del Web » Programación para mayores de 30 ;) » C/C++ »

string.replace en linux!!!!

Estas en el tema de string.replace en linux!!!! en el foro de C/C++ en Foros del Web. Hola y gracias por anticipado. Tengo un programa en el que leo de un fichero, copio el contenido a un string, obtengo unos datos de ...
  #1 (permalink)  
Antiguo 22/01/2008, 11:55
 
Fecha de Ingreso: enero-2008
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Pregunta string.replace en linux!!!!

Hola y gracias por anticipado.

Tengo un programa en el que leo de un fichero, copio el contenido a un string, obtengo unos datos de este contenido y después los introduzco en otro string sustituyendo unos campos...



El problema reside en que al copiarlo en el último string, no es capaz de leer acentos. Pero lo más extraño es que ejecutando el programa en Cygwin los caracteres se copian perfectamente, pero al compilarlo en linux y ejecutarlo ahí, no escribe los acentos y demás amigos del castellano...



Lo dicho, muchas gracias por la ayuda!
  #2 (permalink)  
Antiguo 22/01/2008, 12:06
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 17 años, 1 mes
Puntos: 24
Re: string.replace en linux!!!!

La salida ¿ La ves en el terminal, o la llevas a un fichero ?
Yo creo que la estas viendo en un fichero, y el problema es de como está configurado el tty.
Prueba a llevar la salida a un fichero y abrirlo con un editor de texto.
__________________
Grupos de Música
Pop Music Stars
  #3 (permalink)  
Antiguo 23/01/2008, 02:12
 
Fecha de Ingreso: enero-2008
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Re: string.replace en linux!!!!

La salida en principio es para enviar por un socket, pero antes de enviarla, la veo en un fichero de texto. Alli me escribe mal los acentos.
Pero si los envío por socket a una impresora, me salen igual de mal los acentos...

La cosa es que, el mismo programa compilado y ejecutado en el Cygwin, sale todo perfecto, mientras que compilado y ejecutado en Fedora8 no.


PS: muchas gracias por tu ayuda.
  #4 (permalink)  
Antiguo 23/01/2008, 04:36
 
Fecha de Ingreso: enero-2008
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Re: string.replace en linux!!!!

Investigando un poco más, veo que el problema no sea con la función de replace, sino que, por alguna razón, Linux codifica los acentos de manera diferente al enviarlos por socket.

Me explico. Lo pruebo en Linux y en Windows, saco el archivo de salida, lo miro en hexadecimal y veo que se corresponde. Pero al enviarlo en el socket algo cambia...

No se, estoy muy perdido y vuelvo loco a todos los que le pregunto...
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 01:11.