English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

File Erlang

使用I / O时,Erlang提供了许多方法。 它具有更简单的类,可为文件提供以下功能-

  • 读取文件

  • 写入文件

  • 查看文件是文件还是目录

Erlang中的文件操作方法

让我们探究Erlang提供的一些文件操作。就这些示例而言,我们将假设存在一个名为NewFile.txt的文件,其中包含以下文本行

Example1

Example2

Example3

在以下示例中,此文件将用于读取和写入操作。

一次读取一行文件的内容

使用文件库中可用的方法对文件执行常规操作。为了读取文件,我们需要首先使用open操作,然后使用read操作,该操作可作为文件库的一部分使用。以下是这两种方法的语法。

语法

  • 打开文件– Open(File,Mode)

  • 读取文件– read(FileHandler,NumberofBytes)

参数

  • File −这是需要打开的文件的位置。

  • Mode −这是需要打开文件的模式。

以下是一些可用的模式-

  • Read −必须存在的文件已打开以进行读取。

  • Write−打开文件进行写入。如果它不存在,则创建它。如果文件存在,并且写与读不结合,则文件将被截断。

  • Append−该文件将被打开以进行写入,如果不存在则将被创建。对用append打开的文件进行的所有写操作都将在文件末尾进行。

  • Exclusive−打开该文件进行写入时,如果该文件不存在,则会创建该文件。如果文件存在,则open将返回{error, exist}。

  • FileHandler−这是文件的句柄。这个句柄是使用file:open操作时返回的句柄。

  • NumberofByte −这是需要从文件中读取的信息的字节数。

返回值

  • Open(File,Mode) −如果操作成功,则返回文件的句柄。

  • read(FileHandler,NumberofBytes) −从文件返回请求的读取信息。

例如

-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−Allo eseguire il programma sopra, si ottiene il seguente risultato.

Example1

Ora discutiamo altri metodi disponibili per le operazioni sui file -

NumeroMetodi e descrizioni
1

file_read

Utilizzabile per leggere tutto il contenuto di un file in una volta.

2

write

Utilizzato per scrivere contenuti in un file.

3

copy

Utilizzato per copiare un file esistente.

4

delete

Questo metodo viene utilizzato per eliminare un file esistente.

5

list_dir

Questo metodo viene utilizzato per elencare i contenuti di una directory specifica.

6

make_dir

Questo metodo viene utilizzato per creare una nuova directory.

7

rename

Questo metodo viene utilizzato per rinominare un file esistente.

8

file_size

Questo metodo viene utilizzato per determinare la dimensione del file.

9

is_file

Questo metodo viene utilizzato per determinare se il file è effettivamente un file.

10

is_dir

Questo metodo viene utilizzato per determinare se la directory è effettivamente una directory.