文件编程erlang中操作文件的模块有:file模块:包含用于文件的打开,关闭,读取,写入和目录列表等功能的函数fi
文件编程
erlang中操作文件的模块有:
file模块:包含用于文件的打开,关闭,读取,写入和目录列表等功能的函数
filename模块:提供了一套操作文件名的函数
filelib模块:file模块的扩展,提供了一套辅助函数用于生成文件列表,检查文件类型等操作
io模块:提供了一系列对已打开文件进行操作的函数
文件操作:
1.读取文件
1)从文件中读取所有erlang数据项:
data1.dat
{ok,S} = file:open(“…”,[raw,write,binary]).file:pwrite(S,10,<<”new”>>).file:close(S).在文件的第10个字节处写入一串新的字符串。会覆盖掉原先的内容。
3.目录操作:
list_dir(Dir):用于生成Dir目录下的文件列表。
make_dir(Dir):创建一个新目录
del_dir(Dir):删除目录。
4.查看文件的属性:
file:read_file_info(F):查看文件的属性。如果F是合法的文件名或目录名,那么这个函数会返回{ok,Info},其中Info是一个类型为#file_info的记录。
#file_info的定义如下:
-record(file_info,{size,type,assess,atime,mtime,ctime,mode,links,major_device}).
filelib模块导出了一些日常使用的函数,如:file_size(File),is_dir(File),这些函数只是对read_file_info的封装。
5.复制和删除文件:
file:copy(Source,Destination).复制文件
file:delete(File).删除文件。
文件编程常用函数:
change_group:修改一个文件的文件群组
change_owner:修改一个文件的所有者。
change_time:修改一个文件的最近访问时间或者最新更新时间
close:关闭一个文件
consult:从一个文件中读取erlang值
copy:复制文件内容
del_dir:删除一个目录
delete:删除一个文件
eval:在文件中对一个erlang表达式求值
format_error:返回一个错误原因的描述字符串
get_cwd:得到当前工作目录
list_dir:获取一个目录中文件列表
make_dir:创建一个目录
make_link:为一个文件创建一个硬链接(hardlink).
make_symlink:为一个文件或目录创建符号链接(symbolic link)
open:打开一个文件
position:设置一个文件的访问位置
pread:在一个特定的文件访问位置上读取文件
pwrite:在一个特定的文件访问位置上写入文件
read:从文件中读取内容
read_file:读取整个文件
read_file_info:获取一个文件的信息。
read_link:查看一个文件的连接指向.
read_link_info:查看一个文件或链接的信息。
rename:重命名一个文件
script:对一个文件中的erlang表达式求值并返回结果。
set_cwd:设定当前的工作目录
sync:把一个文件的内存状态同步到该文件的物理存储上
truncate:截断一个文件。
write:向一个文件写入数据
write_file:写入整个文件
write_file_info:修改一个文件的信息。