真是不好意思,因为暂时还没找到适合的foldl的列子所以先说下其他的代替,等日后我遇到好的例子再跟大家分享。
以下的一个列子是个解码的函数,是对我首次发贴中打包的数据作为传进的参数(详情
就只好麻烦各位去看看小弟的第一封贴)。
首先Lists=[{?int32u,Name},{?int16u,Age},{?int8,Sex}]会被encode打包成为一段二进制
的Bin,因为我们在解码之前,我们会清楚发送过来的数据是以怎样格式打包的,所以解码时我们
也应该以这种格式来解,这样一说我发觉我上次的打包有缺陷,我应该在打包后再次把一个代表这
种格式的元项压缩进去,因此以下的代码并不完美。
decode(Bin,List) ->
case is_binary(Bin)of
true ->
<<Val:32/big-integer-unsigned,Bin_new/binary>>=Bin,
decode(Bin_new,[Val | List]);
false ->
List
end.
|