我目前正在做一个Erlang项目,在阅读文件时遇到了麻烦。我想读取/src文件夹中的一个文本文件,其中所有的Erlang和一个文本文件都在同一个结构中。另外,尽管指定了文件路径,我还是无法读取该文件。如有任何帮助,将不胜感激。
start() ->
{ok,DataList} = file:consult("Calls.txt"),
io:format("** Calls to be made **"),
io:fwrite("~w~n",[DataList]).
数据文件存储如下内容:{约翰,[吉尔,乔,鲍勃]}。
3条答案
按热度按时间6jygbczu1#
请尝试将文件夹名称添加到路径或尝试将完整修补程序设置到文件:
注意:错误
{error,enoent}
意味着文件不存在或您没有权限读/写当前文件,对于这种情况需要设置777
权限或类似。iyfamqjs2#
如果您需要使用src/call.txt,则这只意味着您的IDE(或您)创建了一个src文件夹,calls.txt文件放置在该文件夹中。同时,IDE使用的路径仅包含顶级文件夹(即IDE项目的根文件夹)。因此在这种情况下必须使用src/call.txt。这不是Erlang的问题,或者甚至是IDE,这只是项目的设置方式。
您可以执行以下两种操作之一:在IDE文件管理器中将calls.txt文件上移一级,以便可以将其作为calls.txt而不是src/call.txt引用.您也可以在从命令行运行该文件之前,将路径更改为“calls.txt.”
rur96b6h3#
enoent
表示“错误:没有条目/实体”。这意味着文件找不到。当我尝试你的代码,它工作正常,输出