簡體   English   中英

如何將列表寫入文件?

[英]How to write list to file?

我在嘗試:

import System.IO
saveArr = do
    outh <- openFile "test.txt" WriteMode
    hPutStrLn outh [1,2,3]
    hClose outh

但它不起作用...輸出:

文字“1”中沒有(Num Char)的實例

編輯確定hPrint與int hPrint工作但是數組中的浮點數怎么樣? [1.0, 2.0, 3.0]

hPutStrLn只能打印字符串。 也許你想要hPrint

hPrint outh [1,2,3]

數組,列表和字符串只存在於程序員的想象中,並且在某些語言中是一個術語。

文件是一個字節序列,所以當你想要寫一些東西時,你應該將虛構的字符串/列表/數組編碼為字節序列(通過show或來自Storable等的東西)。
終端也是一個字節序列,它是向用戶顯示某些東西所需動作的編碼表示。

你有很多方法可以編碼。 您可以通過foldr (\\ab -> a (',' : b)) "\\n" (map shows [1,2,3])進行數組的CSV表示,或者您可能要打印它show [1,2,3]

為您的類型派生Binary,然后使用Data.Binary包中的'encodeFile'以二進制形式寫入數據。 這類似於將數據寫為字節串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM