Administrar archivos Ascii (texto) desde el código de Delphi

En pocas palabras, los archivos de texto contienen legibles ASCII caracteres. Podemos pensar que trabajar con un archivo de texto en Delphi es análogo a reproducir o grabar información en una cinta VCR.

Aunque es posible realizar cambios en un archivo de texto, salte al procesar información o agregue algunos datos al archivo que no sea al final, es aconsejable usar un archivo de texto solo cuando sabemos que estamos trabajando con texto ordinario y no se realizan tales operaciones necesario.

Se considera que los archivos de texto representan una secuencia de caracteres formateados en líneas, donde cada línea termina con un marcador de fin de línea (un Combinación CR / LF).

El TextFile y el método de asignación

Para comenzar a trabajar con archivos de texto, debe vincular un archivo en un disco a una variable de archivo en su código - declare una variable de tipo TextFile y use el procedimiento AssignFile para asociar un archivo en un disco con un archivo variable.

Leer información de un archivo de texto

instagram viewer

Si queremos volver a leer el contenido de un archivo en una lista de cadenas, solo una línea de código hará el trabajo.

Para leer la información de un archivo línea por línea, debemos abrir el archivo para entrada mediante el uso de Reiniciar procedimiento. Una vez que se restablece un archivo, podemos usar ReadLn para leer información de un archivo (lee una línea de texto de un archivo y luego pasa a la siguiente línea):

Después de agregar una línea de texto desde un archivo a un componente memo, SomeTxtFile debe cerrarse. Esto lo hace el Cerca palabra clave.

También podemos usar el procedimiento Leer para leer información de un archivo. Leer funciona igual que ReadLn, excepto que no mueve el puntero a la siguiente línea.

EOF - Fin del archivo

Use la función EOF para asegurarse de que no está intentando leer más allá del final del archivo. Digamos que queremos mostrar el contenido del archivo en cuadros de mensaje, una línea a la vez hasta llegar al final de un archivo:

Nota: es mejor usar Mientras bucle que el ciclo Hasta para tener en cuenta la posibilidad (poco probable) de que el archivo exista pero no contenga ningún dato.

Escribir texto en un archivo

los WriteLn es probablemente la forma más común de enviar información individual a un archivo. El siguiente código leerá un texto de un componente Memo1 (línea por línea) y lo enviará a un archivo de texto recién creado.

Dependiendo del estado del archivo proporcionado al procedimiento de Reescritura, crea un nuevo archivo (abre el archivo para la salida) con el nombre asignado a SomeTextFile. Si ya existe un archivo con el mismo nombre, se elimina y se crea un nuevo archivo vacío en su lugar. Si SomeTextFile ya está abierto, primero se cierra y luego se vuelve a crear. La posición actual del archivo se establece al comienzo del archivo vacío.

Nota: Memo1.Lines. SaveToFile ('c: \ MyTextFile.txt') hará lo mismo.

A veces solo necesitaremos agregar algunos datos de texto al final de un archivo existente. Si este es el caso, llamaremos Adjuntar para asegurarse de que un archivo se abre con acceso de solo escritura con el puntero del archivo colocado al final del archivo. Algo como:

Tenga cuidado con las excepciones

En general, siempre debes usar manejo de excepciones cuando se trabaja con archivos. I / O está lleno de sorpresas. Siempre use CloseFile en un bloque finalmente para evitar la posibilidad de corromper la FAT de un usuario. Todos los ejemplos anteriores deben reescribirse de la siguiente manera:

Manipulando Con Archivos Estructurados

Delphi tiene la capacidad de manejar tanto archivos ASCII como archivos que contienen datos binarios. Aquí están las técnicas para trabajar con archivos con y sin tipo (binarios).

instagram story viewer