FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problemita en Procesamiento de Archivo de Texto
Hola a todos!
Tengo que hacerles una consulta sencilla sobre el procesamiento de archivos de texto. Estoy utilizando las funciones fopen, fscanf y fgets. Basicamente debo ir cargando en un bucle for una tabla como la siguente: ---------------------------------------------- I010065478 Juan Perez Brown 123 Buenos Aires (0231) 12345 pepe@mail.com 45 14 I010065987 Juan Lopez White 197 Buenos Aires (0231) 567940 pancho@mail.com 67 ---------------------------------------------- Mis dudas son las siguientes: 1) Para levantar un Nombre (que posee espacios) que me conviene usar?? 2) En el caso de tener que cargar un entero y este no esta (solo hay un enter). Como lo implemento?? Porque si hay un enter en vez de un numero se me corre todo. Muchas Gracias! |
#2
|
||||
|
||||
Hola Rogelio.
Antes de continuar te hago una sugerencia; Si te es posible adoptarla dímelo, porque en ese caso las respuestas/soluciones son diferentes a las que puedes obtener tal y como o estás haciendo ahora. La sugerencia es que utilices un TStrings para cargar el fichero, el lugar de hacerlo con las funciones que comentas. Es mucho más simple y salvo que el fichero fuera "muy, muy grande" no creo que existan diferencias de velocidad aceptables. Puedes cargar un fichero de texto utilizando un código similar a este:
De estar forma el recorrido paracapturar las líneas es mucho más sencillo:
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
|||
|
|||
Gracias por tu respuesta... Pense antes hacerlo con un Memo oculto pero tiene la limitacion de los 64KB. Actualmente el fichero esta en el orden de los 3,5MB.... Conviene hacer como tu dices o con las funciones que nombre? Y como seria la idea para procesar?? Primero lo leo como texto, valido y convierto al formato que necesito?
|
#4
|
||||
|
||||
Si en algun caso necesitas "saltarte" esa restricción puedes utilizar un TRichEdit, que en cierta manera es similar y no la tiene.
De todas formas, este no es el caso, porque no necesitas control visual (a no se que quieras seguir el proceso visualmente), te basta con la clase TStrings. Con 3,5Mg, puedes hacerlo perfectamente con un TStrings. Una simple prueba, en mi equipo, tarda 350 ms en cargarlo en un RichEdit, por el tema visual, y apenas 50 ms en cargarlo en un TStrings. Para procesar, haz el recorrido leyendo por líneas, tal y como te he mostrado más arriba, y luego cada línea la tratas como sea necesario (convirtiéndola, almacenándola,...) Un saludo.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#5
|
|||
|
|||
Muchas Gracias por la pronta respuesta... Ya me pongo a trabajar en ello...
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Procesamiento de imagenes | trex2000 | Gráficos | 4 | 27-10-2010 13:42:44 |
procesamiento de voz | elcigarra | Varios | 0 | 26-01-2006 13:05:29 |
Como puedo grabar texto en un Archivo de Texto sin Sobreescribir???? | AGAG4 | Varios | 12 | 08-11-2005 22:53:00 |
Db y archivo de texto | carlospcs | Conexión con bases de datos | 0 | 10-08-2004 23:55:09 |
Archivo de Texto | tiel | Varios | 5 | 16-07-2004 20:37:12 |
|