使用I / O时,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]).
输出−运行上述程序时,将得到以下结果。
Example1
现在让我们讨论可用于文件操作的其他一些方法-
序号 | 方法与说明 |
---|---|
1 | 可用于一次读取文件的所有内容。 |
2 | 用于将内容写入文件。 |
3 | 用于复制现有文件。 |
4 | 此方法用于删除现有文件。 |
5 | 此方法用于列出特定目录的内容。 |
6 | 此方法用于创建新目录。 |
7 | 此方法用于重命名现有文件。 |
8 | 此方法用于确定文件的大小。 |
9 | 此方法用于确定文件是否确实是文件。 |
10 | 此方法用于确定目录是否确实是目录。 |