目前我有一个 Publisher[InputStream],我怎么知道读取它以提供类似 Java8 Streams API 的内容:
def binStream(is: InputStream) = Stream.continually(is.read).takeWhile(_ != -1).map(_.toByte)
目前,我使用 Scala 和 playframework,并希望通过实验性的 akka-streams/reactivestreams 库对输出进行分块,但是我不知道,因为关于这两件事的文档很少甚至没有。有什么建议吗?
最佳答案
akka-streams 有 InputStreamSource它在其构造函数中接受一个InputStream。
有大量关于 Akka Streams 的文档 here
如果您对 play iteratee 库感兴趣(您将 play-framework
标签放入您的问题中),您可以使用 Enumerator.fromStream方法来制作枚举器。
还有大量关于 Play 的 Iteratees 的文档 here
关于Java/Scala - 响应式(Reactive)流/枚举如何连续读取输入流直到 read() 返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31750580/