- Erlang 教程
- Erlang - 首页
- Erlang - 概述
- Erlang - 环境
- Erlang - 基本语法
- Erlang - Shell
- Erlang - 数据类型
- Erlang - 变量
- Erlang - 运算符
- Erlang - 循环
- Erlang - 决策
- Erlang - 函数
- Erlang - 模块
- Erlang - 递归
- Erlang - 数字
- Erlang - 字符串
- Erlang - 列表
- Erlang - 文件I/O
- Erlang - 原子
- Erlang - 映射
- Erlang - 元组
- Erlang - 记录
- Erlang - 异常
- Erlang - 宏
- Erlang - 头文件
- Erlang - 预处理器
- Erlang - 模式匹配
- Erlang - 保护条件
- Erlang - BIFS
- Erlang - 二进制
- Erlang - 函数 (Funs)
- Erlang - 进程
- Erlang - 邮件
- Erlang - 数据库
- Erlang - 端口
- Erlang - 分布式编程
- Erlang - OTP
- Erlang - 并发
- Erlang - 性能
- Erlang - 驱动程序
- Erlang - Web编程
- Erlang 有用资源
- Erlang - 快速指南
- Erlang - 有用资源
- Erlang - 讨论
Erlang - 文件I/O
Erlang在处理I/O时提供多种方法。它拥有更便捷的类来提供以下文件功能:
- 读取文件
- 写入文件
- 查看文件是文件还是目录
Erlang中的文件操作方法
让我们探索Erlang提供的一些文件操作。为方便起见,以下示例假设存在一个名为NewFile.txt的文件,其中包含以下文本:
示例1
示例2
示例3
此文件将用于以下示例中的读写操作。
一次读取文件内容一行
一般文件操作是通过使用文件库中的方法进行的。对于文件的读取,我们需要首先使用open操作,然后使用文件库中提供的read操作。以下是这两种方法的语法:
语法
- 打开文件 – Open(File,Mode)
- 读取文件 – read(FileHandler,NumberofBytes)
参数
File − 需要打开的文件位置。
Mode − 需要打开文件的模式。
以下是部分可用模式:
Read − 打开文件以进行读取,文件必须存在。
Write − 打开文件以进行写入。如果文件不存在,则创建它。如果文件存在,并且write未与read组合使用,则文件将被截断。
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 |
此方法用于确定目录是否真的是目录。 |