> Erlang中文手册 > format/3 按照指定的格式把数据写入到输出端上

io:format/3

按照指定的格式把数据写入到输出端上

用法:

format(IoDevice, Format, Data) -> ok

内部实现:

-spec format(IoDevice, Format, Data) -> 'ok' when
      IoDevice :: device(),
      Format :: format(),
      Data :: [term()].

format(Io, Format, Args) ->
    o_request(Io, {format,Format,Args}, format).

跟 io:format/2 唯一的区别就是多了一个输出端 IoDevice 参数,不用原来默认的输出端作为输出载体,其他参数 Format 和 Data 跟 io:format/2 一样。

这个函数需要指定一个输出端(通常,调用 file:open/2 会返回一个输出端)然后作为参数传入给函数,假设当前目录下有个 test.txt 的文件

{ok, IoDevice} = file:open("test.txt", write),
io:format(IoDevice, "~s~n", ["Just a test!"]).