FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Memo + LoadFromFile = no coje acentos, ñ, etc
Hola, he creado un post esta mañana en el apartado de firebird, y la verdad no es el correcto, asi que pongo un enlace, por si me podeis ayudar:
-Nota, copio el texto porque no puedo poner enlaces Tengo el siguiente problema: para realizar el traslado de la información de un programa de terceros, al que estoy desarrollando, leo los datos de un fichero .dat formateado. El problema es que lo leo con Memo1.Lines.LoadFromFile() y se corrompen los acentos, ñ, y demas. (si veo el fichero con el notepad, aparecen correctamente las ñ, acentos y demas) La base de datos en firebird esta con UTF8, pero he detectado que el problema es que al cojer el fichero con LoadFromFile, este ya tiene los caracteres 'raros' que se insertan en la base de datos. Estoy usando Lazarus. Os agradeceria vuestra ayuda. Un saludo. |
#2
|
|||
|
|||
Hola.
En ubuntu, he puesto en consola : $file mifichero.dat y me responde : 'ISO-8859 text, with very long lines, with CRLF line terminators' Bien, con esa info : Como puedo hacer para que el LoadFromFile me respete los caracteres con los acentos? Este programa lo estoy realizando con lazarus en windows, y se ejecutara solo en windows. Un saludo. |
#3
|
||||
|
||||
Si el texto está creado con iso8859, tendrás que abrirlo como tal, ya que si lo abres con utf8 ocurre lo que está pasando. Si quieres convertirlo a utf8 no sé si existe alguna utiildad, supongo que tendrás que reemplazar los caracteres acentuados y eñes en el texto que importas.
|
#4
|
|||
|
|||
Hola.
Ya solucione el problema, lo que tuve que hacer es convertir a UTF8 las lineas leidas directamente del fichero y luego añadirlas al memo. Con esto, ya me insertaba correctamente el contenido en la base de datos. Aqui dejo la funcion por si le sirve a aguien. Código:
function CargaPreguntas(const Fichero: TFileName; Memo: TMemo) : string; var f: text; linea_actual: string; begin assign( f, Fichero ); reset( f ); while not eof( f ) do begin readln( f, linea_actual ); Memo.Lines.Add( UTF8Encode(linea_actual) ); end; close( f ); end; |
#5
|
||||
|
||||
Cita:
|
#6
|
||||
|
||||
Resulta que lo tengo instalado y no lo sabía:
Cita:
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TJPEGImage.LoadFromFile: Error 52 | Jose_Pérez | Gráficos | 4 | 12-02-2010 10:46:51 |
Problema con LoadFromFile | sergiosantiago1 | Gráficos | 5 | 11-04-2008 17:02:47 |
problemas con el LoadFromFile | sac | OOP | 14 | 19-07-2007 16:55:34 |
LoadFromFile con una progressbar | Jesús Pena | Varios | 5 | 18-04-2007 20:19:24 |
|