Erlang文件追加模式

时间:2009-07-01 06:49:05

标签: erlang

我试图在erlang中使用追加模式在文件中写一些内容,但它将错误视为错误的参数。

Syntax used: file:write_file("/tmp/test1.txt","Abhimanyu","append").
error:{error,badarg}

谢谢

3 个答案:

答案 0 :(得分:17)

file:write_file函数要求最后一个参数是atoms iso字符串的列表,因此将实现更改为file:write_file("/tmp/test1.txt","Abhimanyu", [append]).可以解决您的问题。更多示例可以在TrapExit找到。

答案 1 :(得分:7)

在“如果不存在则不创建”附加问题上,您必须通过使用类似文件的内容来提高创意:read_file_info:

 case file:read_file_info(FileName) of
        {ok, FileInfo} ->
                 file:write_file(FileName, "Abhimanyu", [append]);
        {error, enoent} ->
                 % File doesn't exist
                 donothing
 end.

如果文件不存在,附加模式(或写入模式)将创建文件...

答案 2 :(得分:4)

我相信你需要:

file:write_file("/tmp/test1.txt", "Abhimanyu", [append]).

我认为您可能还需要将数据转换为二进制文件。