假设我有以下类型:
data WaveFormatChunk = WaveFormatChunk {
compression :: Word16,
channels :: Word16,
sampleRate :: Word32,
averageBps :: Word32,
blockAlign :: Word16,
significantBits :: Word16
} deriving (Show)
有没有办法将所有这些全部转储到一个 ByteString (或类似的结构)中(以 ye olde C 结构的方式)?如果没有,我必须编写一个函数,将它们分别放入一个列表中,是否至少有一些函数可以使将值粘贴到 Word8 列表中变得容易?像 putWordBBxe 之类的东西,除了字节字符串或列表(尽管我很可能严重错误,因为我还没有正确读入 Monads,在我看来 Get/Put 主要用于流)。
Data.Binary 并不是我正在寻找的东西,它似乎更适合将数据转储到磁盘上,而不是将其存储为具有特定(和“错误”)字节序的特定格式。