【问题标题】:Java / Scala - ReactiveStreams / Enumeratee How to continually read an Input Stream until read() returns -1Java / Scala - ReactiveStreams / Enumeratee 如何持续读取输入流,直到 read() 返回 -1
【发布时间】:2015-07-31 16:07:13
【问题描述】:

目前我有一个 Publisher[InputStream] 我怎么知道阅读它有类似 Java8 Streams API 提供的东西:

def binStream(is: InputStream) = Stream.continually(is.read).takeWhile(_ != -1).map(_.toByte)

目前我使用 Scala 和 playframework,并希望通过实验性的 akka-streams/reactivestreams 库对输出进行分块,但是我不知道,因为关于这两件事的文档很少甚至没有。有什么建议吗?

【问题讨论】:

    标签: java scala playframework reactive-streams


    【解决方案1】:

    akka-streams 有 InputStreamSource,它在其构造函数中接受 InputStream。

    关于 Akka Streams here 有很多文档

    如果您对 play iteratee 库感兴趣(您在问题中添加了play-framework 标签),您可以使用Enumerator.fromStream 方法来制作枚举器。

    还有一些关于 Play 的迭代器 here 的文档

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-14
      • 2022-01-25
      • 1970-01-01
      • 1970-01-01
      • 2018-03-05
      • 1970-01-01
      • 2016-01-11
      • 2014-12-04
      相关资源
      最近更新 更多