Erlang Thursday – filelib:is_file/1

今天的Erlang Thursday讲的是 filelib:is_file/1.

filelib:is_file/1 入参是一个表示文件名的字符串,它根据这个文件名所指的是否是文件或目录而返回true或者false。

这个函数在你正在需要从一个配置文件读取内容并且在尝试处理前确认这个文件或目录是否存在的时候有用,以便你可以在退出前得到一个友好的错误信息而不仅是引起一个系统错误。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
filelib:is_file("foo").
% false
filelib:is_file("junk").
% true
filelib:is_file("tmp").
% true
filelib:is_file("tempmp").
% false
filelib:is_file("temp").
% true
filelib:is_file("/usr/local/bin").
% true
filelib:is_file("/usr/local/var").
% true
filelib:is_file("/usr/local/vars").
% false
filelib:is_file(".").
% true
filelib:is_file("..").
% true

filelib:is_file/1 的入参也可以是一个原子,或者甚至也可以是一个嵌套的列表来表示一个文件名。

1
2
3
4
5
6
filelib:is_file(foo).
% false
filelib:is_file(junk).
% true
filelib:is_file(["/usr", ['/local', '/bin']]).
% true

原文链接: https://www.proctor-it.com/erlang-thursday-filelib-is_file-1/