2012-03-23 56 views
4

如何將Integer的ByteString表示形式轉換爲... well Integer? 是否有ByteStrings的特殊讀取功能,還是必須首先解壓才能使用正常讀取?Haskell:「閱讀」ByteString

謝謝。

回答

4

您可以使用readInt or readIntegerData.ByteString.Char8。如果你想讀一些其他類型的數據,你需要編寫你自己的解析器;最好的選擇可能是attoparsec,這是一個用於快速編寫ByteStringText解析器的庫,類似於Parsec。

2

除了ehird的優秀建議,您還可以使用Data.Binary.Get讀取定長整數。

ghci> :m +Data.Binary.Get 
ghci> :t runGet getWord64le 
ByteString -> Word64