![]() |
Problemas Lectura Archivo CSV
Apreciados Foristas,
He recibido un archivo de texto. El archivo es la exportacion de un sistema de SQLSERVER 2008 y los campos vienen delimitados con punto y coma (;) Cuando los veo los con el editor de Notepad ++ se ven bien, cada registro tiene su registro final con CRLF indicando el final del registro , despues del ultimo registro no tiene campos de control visibles con notepad ++. Para leer el archivo de datos utilizo el siguiente codigo utilizando delphi 5 Código:
Readln(w_F, w_string);Abri el Archivo con notepad++ copie los datos al clickboard y los copie a un notepad microsoft salve la informacion con otro nombre y ejecute de nuevo la lectura de datos, y ahi si funciono en forma correcta Abri el archivo usando
y como resultado obtengo solo 3 caracteres en el campo memo, pero son campos como de control Ahora utilice el codigo usando delphi xe2 y los datos aparecen en el campo memo en forma normal los cuales son comno 1500 registros No uso delphi Xe2 ya que estamos apenas estamos migrando a esta nueva version de delphi Puede alguno de ustedes darme alguno idea o si ha tenido el mismo problema y su solucion Gracias Adjunto una oparte del texto a importar Cita:
|
Me pierdo en la descripción de tu problema. ¿Qué es el primer código? ¿Qué es eso de LOAD_MEMO, LOAD_DATASET? ¿Quieres leer el archivo con ese código (que no entiendo qué hace) o en un Memo con LoadFromFile?
// Saludos |
Ampliacion Codigo
Gracias Roman por contestar:
El primer codigo es para ller el archivo que voy a importar y declaro un archivo texto, el cual leo linea a linea, una vez que leo una linea lo que hago es descomponer el registro en campos.
Con el anterior el programa no lee registros ya que el while esta condicionado con eof(w_f) , tal como lo anote en la descripcion si el archivo lo copio a otro archivo usando copy parte y salvarlo el archivo si es procesado en forma normal En el siguiente formato, uno puede grabar la inormacion de un archivo de texto dentro de un campo memo. La prueba conv delhi 5 solo trae 3 caracteres que no se que son, usando delphi xe2 con el mimo codigo si funciona,
Creo que existe algo en el archivo que no deja que se lea normalmente, pero a su vez existe alguna diferencia en la forma que se lee un load fromfile entre delphi 5 y delphi xe Gracias por su atencion |
No entiendo la explicación, ¿quieres decir que el fichero de texto tiene un formato especial?, ¿que no es texto 'normal'?
¿Es posible que pongas aquí un trozo de fichero para que le echemos un vistazo? |
archivo csv
Cita:
El archivo que tiene las letras xxxx al final es la copia usando el copy a clipboard Usdo delphi 5 |
El archivo original está en unicode que no puede leer delphi 5 directamente pero sí delphi xe. Tendrías que convertir primero el archivo antes de poder leerlo.
// Saludos |
Me encontré esta función aquí, al parecer de Peter Below
Su uso es muy sencillo:
Ojalá te sirva. // Saludos |
Me lo guardo, puede hacer falta :)
|
Hola.
Para sumar otra opción: Delphi Gems Unicode library, free (licencia MIT) para plataformas Delphi 4 - 5, BCB 4 - 5. Saludos. |
A decir verdad, esa biblioteca fue lo primero que encontré e incluso la descargué. Pero soy muy flojo :o y de buenas a primeras no vi cómo usarla para resolver el problema del compañero, así que seguí con mi búsqueda en Google :D.
// Saludos |
Como se Identifica el Archivo tenga caracteres Unicode?
Cita:
Toca estudiar mas delphi :eek:) roman como identifico que venia con caractrres unicode ? |
Leyendo archivo con caractres unicode con delphi 5
Gracias Forista Roman y a los otros foristas por su pronta respuesta
Usando el codigo de Peter Below facilitado por roman he podidom solucionar el problema con un par de copy paste :D [quote=roman;439752]Me encontré esta función aquí, al parecer de Peter Below |
Cita:
![]() ![]() |
Cita:
![]() Ya dije que soy muy flojo :o :p // Saludos |
Cita:
A mi me pasa igual :o:) |
| La franja horaria es GMT +2. Ahora son las 14:38:46. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi