FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Fichero de Texto Enorme
Estoy tratando de manejar ficheros de texto que son enormes (50 mb), ya os imaginais cuantos registros puede traer, el problema es que antes lo tengo que manipular con el Ultra Edit y asignarle 200 caracteres por linea por ejemplo y luego lo manipulo desde delphi, conoceis alguna forma de tratarlo sin necesidad de cortarlo antes con el ultra edit, algun componente que me lo trate con rapidez.
Gracias. Saludos.
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#2
|
||||
|
||||
Podes abrirlo directamente con TStringList o con archivos de texto clásicos (de los que ya existían desde turbo pascal) sin necesidad de pasarlo por nada antes.
Un saludo.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#3
|
||||
|
||||
estoy de acuerdo con lo que dice jachguate; sin embargo dicho objeto o cualquier componente que vayas a utilizar va a acceder a las APIs que acceden al sistema de archivos; si nos das una idea del proceso que llevas con dichos archivos çde texto talvez podríamos guiarte con algo de código.
Siendo una solucion mas efectiva, tambien es más costosa en conocimientos y en tiempo. Saludos |
#4
|
|||
|
|||
El tema es el siguiente:
Fichero de texto enorme incluso tengo uno de 250 mb. Tiene una sola linea Con el UltraEdit lo parto a 1000 caracteres por linea. Luego desde Delphi abro el fichero y voy copiando linea a linea para una BD según la posición que ocupe. Gracias. Saludos.
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#5
|
||||
|
||||
Pues lo que digo es que no hace falta abrir el archivo con ultraedit para partirlo. Podrías hacerlo directamente con delphi.
Si tiene 250Mb. sin saltos de línea, no creo que eso pueda manejarse en un solo string... según recuerdo el límite es de 64Kb. de texto en un solo string. Pero si podes abrirlo como un stream... e ir cargandolo en los bloques que te parezca conveniente en un buffer. Si procesas estos archivos con frecuencia, el tiempo que invirtás en programarlo se pagará solo al simplificar el proceso metiendo directamente el archivo al programa. Un saludo.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#6
|
|||
|
|||
Te refieres a cargarlo en un componente Memo, RichEdit, etc, y luego cortarlo como yo quiera. El tema es que lo he cargado en un Memo y tambien en un RichEdit, pero ahora estoy parado no se como cortarlo por ejemplo a 100 caracteres por linea.
Gracias. Saludos.
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#7
|
||||
|
||||
Cita:
Espero no hayan muchos errores pues no tenga el Delphi a la mano; pero la idea es leer cada cierta cantidad de bytes del archivo e ir insertandolos a la BD Suerte. |
#8
|
|||
|
|||
Supongo que el array [0..666] son los caracteres a los que quiero cortar.
Lo he probado del siguiente modo:
Y Cortando a 120 caracteres el fichero correspondiente, lo hace perfectamente, pero el de 200 me cae en bucle, y no se por que.
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#9
|
||||
|
||||
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
verificar fichero de texto | arley_molina | Varios | 2 | 12-06-2006 21:52:40 |
fichero de texto con tabulaciones | davidgaldo | Varios | 5 | 30-11-2005 17:23:38 |
leer fichero de texto | davidgaldo | Varios | 1 | 08-11-2005 16:05:12 |
Ayuda con fichero de texto | jadelphi | Varios | 4 | 07-10-2004 10:43:14 |
¿Temporal enorme en QuickReport??!!! | Diegoval | Impresión | 12 | 27-05-2004 14:25:42 |
|