init terminating in do_boot ({{badmatch,{error,enoent}},[{road,main,0,[{_},{_}]},{erl_eval,do_apply,

今天在复现《Erlang趣学指南》时,读取文件一直出现这个异常。
这个异常出现的原因是因为路径不对(多半是因为空格)。

-module(road).
-author("pitt").

%% API
-compile(export_all).

main() ->
  FileName = "road.txt",
  io:format("~p~n", [FileName]),
  {ok, Bin} = file:read_file(FileName),
  io:format("~p~n", [Bin]).

原原本本按照书上打不行。
当前目录需要在文件名前加上‘/’,写成绝对也行。

main() ->
  FileName = "/road.txt",
  io:format("~p~n", [FileName]),
  {ok, Bin} = file:read_file(FileName),
  io:format("~p~n", [Bin]).

你可能感兴趣的:(Erlang)