6

どうすれば次のような定義を持つ関数を書くことができますか...

readBinaryFile :: Filename -> IO Data.ByteString

Haskellの機能部分はダウンしていますが、型システムとモナドはまだ頭を痛めています。誰かがその関数が私にどのように機能するかを書いて説明できますか?

4

2 に答える 2

9
import Data.ByteString.Lazy
readFile fp

パイマンのように簡単。文字列を怠惰にしたくない場合は、怠惰なものをノックオフします。

import Data.ByteString.Lazy as BS
import Data.Word
import Data.Bits

fileToWordList :: String -> IO [Word8]
fileToWordList fp = do
    contents <- BS.readFile fp
    return $ unpack contents
于 2010-08-09T06:17:02.857 に答える
3

readBinaryFile::ファイル名->IOData.ByteString

これは単に関数であり、パッケージに含まData.ByteString.readFileれているため、作成する必要はありません。bytestring

于 2011-04-22T18:11:58.900 に答える