Erlang - E / S de archivos
Erlang proporciona varios métodos cuando se trabaja con E / S. Tiene clases más fáciles para proporcionar las siguientes funcionalidades para archivos:
- Leer archivos
- Escribir en archivos
- Ver si un archivo es un archivo o un directorio
Métodos de operación de archivos en Erlang
Exploremos algunas de las operaciones de archivos que ofrece Erlang. Para los propósitos de estos ejemplos, asumiremos que hay un archivo llamadoNewFile.txt que contiene las siguientes líneas de texto
Example1
Example2
Example3
Este archivo se utilizará para las operaciones de lectura y escritura en los siguientes ejemplos.
Leer el contenido de un archivo una línea a la vez
Las operaciones generales en archivos se llevan a cabo utilizando los métodos disponibles en la biblioteca de archivos. Para la lectura de archivos, primero tendríamos que usar la operación de apertura y luego usar la operación de lectura que está disponible como parte de la biblioteca de archivos. A continuación se muestra la sintaxis de ambos métodos.
Sintaxis
- Abrir un archivo - Abrir (Archivo, Modo)
- Leer un archivo - leer (FileHandler, NumberofBytes)
Parámetros
File - Esta es la ubicación del archivo que debe abrirse.
Mode - Este es el modo en el que se debe abrir el archivo.
A continuación se muestran algunos de los modos disponibles:
Read - El archivo, que debe existir, se abre para lectura.
Write- El archivo se abre para escritura. Se crea si no existe. Si el archivo existe, y si la escritura no se combina con la lectura, el archivo se truncará.
Append- El archivo se abrirá para escritura y se creará si no existe. Cada operación de escritura en un archivo abierto con agregar se llevará a cabo al final del archivo.
Exclusive- El archivo, cuando se abre para escritura, se crea si no existe. Si el archivo existe, abrir devolverá {error, exist}.
FileHandler- Este es el identificador de un archivo. Este identificador es el que se devolvería cuando elfile:open se utiliza la operación.
NumberofByte - Este es el número de bytes de información que deben leerse del archivo.
Valor devuelto
Open(File,Mode) - Devuelve un identificador al archivo, si la operación es exitosa.
read(FileHandler,NumberofBytes) - Devuelve la información de lectura solicitada del archivo.
Por ejemplo
-module(helloworld).
-export([start/0]).
start() ->
{ok, File} = file:open("Newfile.txt",[read]),
Txt = file:read(File,1024 * 1024),
io:fwrite("~p~n",[Txt]).
Output - Cuando ejecutamos el programa anterior, obtendremos el siguiente resultado.
Example1
Analicemos ahora algunos otros métodos disponibles para operaciones de archivos:
No Señor. | Método y descripción |
---|---|
1 | Disponible para permitir la lectura de todo el contenido de un archivo a la vez. |
2 | Se usa para escribir el contenido en un archivo. |
3 | utilizado para hacer una copia de un archivo existente. |
4 | Este método se utiliza para eliminar un archivo existente. |
5 | Este método se utiliza para enumerar el contenido de un directorio en particular. |
6 | Este método se utiliza para crear un nuevo directorio. |
7 | Este método se utiliza para cambiar el nombre de un archivo existente. |
8 | Este método se utiliza para determinar el tamaño del archivo. |
9 | Este método se utiliza para determinar si un archivo es realmente un archivo. |
10 | Este método se utiliza para determinar si un directorio es realmente un directorio. |