2010-08-09 18 views
6

में एक बाइनरी फ़ाइल में पढ़ना मैं एक परिभाषा कुछ तरह के साथ एक समारोह कैसे लिख सकता है ...Haskell

readBinaryFile :: Filename -> IO Data.ByteString 

मैं नीचे हास्केल के कार्यात्मक भागों मिल गया है, लेकिन प्रकार प्रणाली और monads अभी भी बना मेरा सर दर्द कर रहा है। क्या कोई लिख सकता है और समझा सकता है कि यह कार्य मेरे लिए कैसे काम करता है?

उत्तर

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

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

+1

आपको बहुत बहुत धन्यवाद! मुझे पसंद है कि कितना सरल हैकेल पढ़ना है। –

3

readBinaryFile :: फ़ाइल का नाम -> आईओ Data.ByteString

यह केवल Data.ByteString.readFile समारोह है, जो आप, लिखने के लिए कभी नहीं होना चाहिए, क्योंकि यह bytestring पैकेज में है।

+0

लेकिन यह कैसे पढ़ा गया फ़ाइल लागू किया गया है? – osager

संबंधित मुद्दे