PDA

Ver la Versión Completa : Parsear archivos de texto


n3mohack
13-07-2015, 15:46:51
Estimados, tengo el siguiente problema y estoy pensando desarrollar una app con delphi para resolverlo.
Estoy en un proyecto de implantación de un sistema el cual debe "integrarse" con alrededor de 70 sistemas del cliente.
Para esto el cliente entregó los 70 formatos en excel de cada archivo de interfaz, son todos distintos y la mayoría tienen más de un tipo de registro en su interior, los campos de cada tipo de registro están dados por posiciones de inicio y fin uno seguido del siguiente hasta el fin de la línea.
Ejemplo:
https://lh3.googleusercontent.com/-4pwGXDdJiCs/VaO9z0PJ_3I/AAAAAAAAMjM/sbEqV9Xnol4/w1044-h381-no/formato.png

Por lo tanto, debo construir una app a la cual se le pueda "cargar" cualquier formato de archivo con N tipos de registros y luego se le pueda cargar el archivo de datos de la interfaz para que lo lea de acuerdo al formato.
Estoy pensando en que el usuario pueda ir moviendose hacia arriba o abajo línea a línea y que la app sea capaz de mostrar los valores de cada campo según el formato de línea. Otra funcionalidad sería tener la posibilidad de exportar el archivo parseado por un caracter especial especificado por el usuario.
Alguno ha hecho algo parecido?
Saben si existe alguna app que haga algo como esto?, yo no he encontrado... ni de paga ni open.

Todos los comentarios sirven.

Saludos!

Neftali [Germán.Estévez]
13-07-2015, 16:30:14
Entiendo que deberías crear un importador genérico, de forma que puedas guardar una plantilla para cada formato diferente a importar.
Es decir, abres un firchero, defines las columnas y tipos de campos y esa información la guardar como "plantilla". A partir de ese momento, ese "formato" deberías poder importarlo sin problemas.

De todas formas no se si he entendido del todo lo que necesitas.

Para abrir los Excel, la manera más rápuida es utilizar ADO. Si buscas en los foros, ya hemos hablado otras veces de esta opción.

fjcg02
13-07-2015, 16:51:02
Puedes subir un ejemplo?
así veríamos exactamente de qué estamos hablando.

Saludos

n3mohack
13-07-2015, 20:28:15
Entiendo que deberías crear un importador genérico, de forma que puedas guardar una plantilla para cada formato diferente a importar.
Es decir, abres un firchero, defines las columnas y tipos de campos y esa información la guardar como "plantilla". A partir de ese momento, ese "formato" deberías poder importarlo sin problemas.

De todas formas no se si he entendido del todo lo que necesitas.

Para abrir los Excel, la manera más rápuida es utilizar ADO. Si buscas en los foros, ya hemos hablado otras veces de esta opción.

No necesito "importar" los formatos desde excel, así me los entregó el cliente pero no es necesario, puedo definir un simple archivo de texto para cargar los formatos, o proveer una grilla donde el usuario pueda definir sus propios formatos. Es en la lógica de leer y parsear cada línea de un archivo de interfaz (datos), donde estoy dándole vueltas sobre que es lo más óptimo, pensando que tengo varios tipos de registros en el mismo archivo.
Les adjunto un archivo de data de ejemplo.