Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Abrir, leer y escribir un archivo de texto (https://www.clubdelphi.com/foros/showthread.php?t=38060)

zvf 04-12-2006 21:50:38

Hola!!

Probe el codigo de seaone, pero hay un problema...

Corre bien, pero cuando termina y reviso el archivo que creo, solo tiene 6Kb, cuando deberia medir 72Kb, es decir, no me esta extrayendo todas las lineas con la palabra Email,

Saben por que pueda ser? :rolleyes:

seoane 05-12-2006 00:36:58

Vamos por partes ¿como estas seguro de que el resultado debe tener 72kb?

De todas formas, la única explicación que se me ocurre es que no se estemos leyendo las lineas completas, sino que de las lineas largas solo leemos el principio. Así que, ¿Que versión de delphi usas? ¿Estas declarando la variable Str como string sin especificar su longitud?

zvf 05-12-2006 02:52:40

Estoy segura de que son 72Kb porque al correr el otro algoritmo que me mandaste, me da un archivo de ese tamaño, y son aproximadamente 1700 correos, y con el otro algoritmo solo encuentra 132 correos.

Declare el string y no le especifique longitud.

Uso delphi 7

seoane 05-12-2006 03:23:10

:( Pues me rindo, no encuentro donde puede estar el fallo, a mi me funciona bien. Aunque puede que otro vea algo que a mi se me escapa, suele ser frecuente que alguien vea nuestros errores antes que nosotros.

Un ultimo intento desesperado :D ¿el texto tiene los finales de linea como #13#10 o solo como #13? porque si solo usa el #13 la función readln funciona mal mientras que el TStringlist si funciona bien, explicando así porque el primer código funciona y el segundo no.

zvf 05-12-2006 21:31:05

sabes?

Si es algo de eso, porque hay lineas con terminaciones y caracteres extraños, y ya lo probe sin esas lineas y ya funciono.

BUENO, MUCHISIMAS GRACIAS POR TODA SU AYUDA.

HASTA LUEGO!!! :)

jls1988 26-06-2010 17:34:11

Gracias por la solucion

ecfisa 01-07-2010 02:14:05

Hola zvf.

La exepción que te dá la línea:
Código:

while not Eof do
se produce por que debería ser:
Código:

while not Eof(f) do
por otro lado si lo que vas a hacer es leer el archivo deberías abrirlo con
Código:

  Reset(f)
Otra opción para reducir la velocidad de carga es usar BlockRead, tenés un ejemplo en la ayuda de Delphi,
así que no pongo el código.

Saludos.


La franja horaria es GMT +2. Ahora son las 17:55:35.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi