【发布时间】:2020-06-10 07:17:27
【问题描述】:
在 Elixir/Erlang 中,可以对二进制文件和位串进行这种模式匹配/解构:
def func1(my_data) do
<<
1,
44,
a::little-32,
b::little-64,
c,
d::64-little,
e::32-little-float,
rest::binary
>> = my_data
# using a, b, c, d, e, rest
end
我还没有在 Haskell 中找到这样做的方法。 Haskell 有开箱即用的容量吗?还是需要使用一些第三方库?
【问题讨论】:
-
您可以使用解析器库之一编写解析器,例如 parsec 或 attoparsec。从
ByteString中解析位需要一些工作,但我已经完成了。 -
@BobDalgleish 没有回答我的问题
标签: string haskell erlang elixir binary-data