Erlang IO编程之文件目录操作常用方法小结
erlang用于操纵文件i/o的模块有:
file模块:打开、读、写、关闭文件已经操作目录的方法基本都在这里
filename模块:提供平*立方式用于操纵文件名
filelib模块:file模块的扩展,提供了更多的实用工具,在file模块基础上构建
io模块:一系列用于操作打开的文件的方法,解析格式、格式化输出等等。
1.打开文件:
支持的所有模式参见文档。
2.读取:
(1)如果以一个erlang term的方式读取,采用:
其中第二个参数是提示符,用于在标准输入时作为提示。
这个方法有一个变形read/3
第三个参数用于指定开始行数。
(2)如果是按字节读取,文件必须按raw模式打开采用:
(3)按行读取:
(4)读取整个文件的内容:
注意返回的是一个binary类型
(5)随机读取:
其中第二个参数是开始位置,第三个参数是读取的长度,返回的也是binary类型。
3.写入文件:
(1)采用io:format/3方法:
其中的~开头的字符是一个个格式化命令,比如常见的:
~c anscii码
~f 浮点数
~s 字符串
~w erlang term
~p 与~w类似,不过当多行时将自动换行
~n 显然,换行符
(2)写入整个文件:
其中io可以为list、integer或者binary类型
(3)随机写入:
4.关闭文件:
5.目录操作:=
都是linux命令风格的操作,
6.获取文件信息,比如文件大小,最后修改时间等等。调用file:read_file_info/1方法,该方法返回一个file_info记录类型,里面拥有文件的具体信息,比如type、size等。
7.复制和删除文件:
这个笔记仅仅记录了一些常用到的方法,一些高级的工具方法并没有涉及,具体参考erlang的文档。