当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Elixir IO.stream用法及代码示例


Elixir语言中 IO.stream 相关用法介绍如下。

用法一

stream()
(自 1.12.0 起)

:stdio 上返回基于行的 IO.Stream

这相当于:

IO.stream(:stdio, :line)

用法二

stream(device \\ :stdio, line_or_codepoints)
@spec stream(device(), :line | pos_integer()) :: Enumerable.t()

将 IO device 转换为 IO.Stream

IO.Stream 实现了 Enumerable Collectable ,允许它用于读取和写入。

如果给出:line,则device 按给定的字符数或逐行迭代。

这从 IO 读取为 UTF-8。查看 IO.binstream/2 以将 IO 作为原始二进制文件处理。

请注意,IO 流具有副作用,每次遍历流时,您可能会得到不同的结果。

stream/1 已在 Elixir v1.12.0 中引入,而 stream/2 从 v1.0.0 开始可用。

例子

这是一个关于我们如何从命令行模拟回显服务器的示例:

Enum.each(IO.stream(:stdio, :line), &IO.write(&1))

相关用法


注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 IO.stream()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。