Scala Akka流二进制解码器

Scala Akka流二进制解码器,scala,stream,akka,codec,Scala,Stream,Akka,Codec,我想要一个如何为Akka流编写二进制解码器的示例。我有一个二进制数据文件。数据由一个20字节的标头组成,其中最后2个字节包含一个长度字段,后跟“长度”字节。因此,如果最后两个字节包含0x00,0x10,则消息由20字节的头和16字节的正文组成。我想提取36个字节并将其向下传递,然后提取下一个二进制消息,依此类推 我想我想使用FileIO.via(),但我不知道该怎么做。谢谢。这不是一个高质量的问题,因为它没有显示您尝试过的内容和无效内容的大量工作/信息。您应该阅读Akka站点上的streams文

我想要一个如何为Akka流编写二进制解码器的示例。我有一个二进制数据文件。数据由一个20字节的标头组成,其中最后2个字节包含一个长度字段,后跟“长度”字节。因此,如果最后两个字节包含
0x00
0x10
,则消息由20字节的头和16字节的正文组成。我想提取36个字节并将其向下传递,然后提取下一个二进制消息,依此类推


我想我想使用
FileIO.via()
,但我不知道该怎么做。谢谢。

这不是一个高质量的问题,因为它没有显示您尝试过的内容和无效内容的大量工作/信息。您应该阅读Akka站点上的streams文档,并查找
Framing
类()的用法,看看是否可以从中找到答案。我已经阅读了文档。它们显示了使用具有分隔符(如新行)的数据的示例。文档还提到了使用不推荐的管道的解决方案。请查看我为
Framing
类和se提供的scaladoc链接,如果您可以使用
Framing.lengthField
@Aamir工作,我现在也遇到了同样的问题,因此我想知道您是否有办法?