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

file_read

Disponible para permitir la lectura de todo el contenido de un archivo a la vez.

2

escribir

Se usa para escribir el contenido en un archivo.

3

Copiar

utilizado para hacer una copia de un archivo existente.

4

Eliminar

Este método se utiliza para eliminar un archivo existente.

5

list_dir

Este método se utiliza para enumerar el contenido de un directorio en particular.

6

make_dir

Este método se utiliza para crear un nuevo directorio.

7

rebautizar

Este método se utiliza para cambiar el nombre de un archivo existente.

8

tamaño del archivo

Este método se utiliza para determinar el tamaño del archivo.

9

is_file

Este método se utiliza para determinar si un archivo es realmente un archivo.

10

is_dir

Este método se utiliza para determinar si un directorio es realmente un directorio.