- 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 |
此方法用於確定目錄是否真的是目錄。 |