FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
como leer n caracteres de un archivo
Hola a todos, tengo un archivo de texto que es muy muy grande (del orden de 800 MB) y necesito leer bloques de 700 bytes. Estoy probando este codigo, pero no me sirve pq no puedo limitar la informacion que leo:
var fich:TextFile; cad:ansistring; begin // database1.Commit; try try AssignFile(fich,'fichero.txt'); reset(fich); while not eof(fich) do begin readln(fich,cad); memo1.Text:=memo1.Text+cad; //esto es solo para ver el resultado end; finally closeFile(fich); end; except on E:Exception do showmessage('Error de acceso al fichero con msg: '+E.Message); end; Por favor, si alguien sabe como deberia leer el archivo, les estaria muy agradecido. Muchas gracias. |
#2
|
||||
|
||||
El problema es que estás leyendo líneas, tal vez deberías leer caracteres.
Revisa la ayuda sobre Read.
__________________
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
|
|||
|
|||
ya me estoy leyendo el reset pero no me deja pasarle el numero de caracteres a leer, y creia que con BlockRead deberia pero no me deja pasarle una cadena como buffer. La verdad es que no se como podria hacer esto. Si supieras solo que funcion utilizar para leer n caracteres ya lo tendria todo solucionado. Muchas gracias.
|
#4
|
||||
|
||||
Creo que si utilizas Seek para colocarte en una posicióin del fichero y luego Read (no ReadLn) para leer n caracteres te debería funcionar.
__________________
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
|
||||
|
||||
Prueba con esto:
Vamos leyendo los bytes de 700 en 700 y luego los convertimos en un string. el byte extra en el buffer es porque las cadenas tipo PChar necesitan acabar en un carácter nulo. El resto creo que se entiende bien, sino pregunta. |
#6
|
|||
|
|||
muchisisimas gracias, me has ahorrado un monton de tiempo. Muchas gracias de verdad. Un fuerte abrazo
|
#7
|
|||
|
|||
Leer linear de archivo .txt
IMP20983;0;IMP20983
VK RF SE1052 SO M;9008;60490001070 Dejar en una variable cada campo separado por ; es un archivo .txt y los campos son variables. Leo el archivo y lo traspaso a un Memo. if OpenDialog1.Execute then begin AssignFile(F, OpenDialog1.FileName); Reset(F); while not eof(F) do begin Readln(F, S); Memo.Lines.Add(S); end; CloseFile(F); end; Última edición por sépoco fecha: 18-12-2007 a las 22:56:20. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Como leer un archivo del cual no se el tipo ? | ilichhernandez | Varios | 4 | 04-07-2006 10:02:18 |
Como leer un archivo de texto por codigo | Shidalis | Varios | 2 | 03-09-2005 05:54:34 |
Como puedo leer un archivo de variable... | vicvil | Varios | 4 | 10-08-2005 22:31:02 |
Como leer un archivo TXT dentro de una Página | AGAG4 | Internet | 1 | 31-08-2004 03:19:45 |
Leer Archivo .Q43 de Posición Fija es como un Txt | FNADALO | Varios | 1 | 25-05-2004 17:15:27 |
|