2010-08-09 12 views
6

Wie kann ich eine Funktion mit einer Definition etwas schreiben wie ...in einer Binärdatei in Haskell Lesen

readBinaryFile :: Filename -> IO Data.ByteString 

ich die Funktionsteile von Haskell nach unten habe, aber die Art System und Monaden noch machen mein Kopf tut weh. Kann jemand schreiben und erklären, wie diese Funktion für mich funktioniert?

Antwort

9
import Data.ByteString.Lazy 
readFile fp 

einfach wie Kuchenmann. Klopfen Sie den Faulenzer ab, wenn Sie nicht wollen, dass die Schnur faul ist.

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 
+1

http://haskell.org/hoogle/?hoogle=readfile –

+1

Vielen Dank! Ich mag, wie einfach Haskell zu lesen ist. –

3

readBinaryFile :: Dateiname -> IO Data.ByteString

Das ist einfach die Data.ByteString.readFile-Funktion, die Sie sollten nie schreiben, da es in der bytestring Paket.

+0

aber wie wird diese ReadFile implementiert? – osager