我很確定,後面的GHC增加了在Handle
上明確設置字符編碼的能力。但是,當我查看System.IO
時,我沒有看到與字符編碼有關的任何內容。 (我有Haskell平臺2012.4.0.0)hSetEncoding去哪了?
我瞎了還是乾脆錯了?
我很確定,後面的GHC增加了在Handle
上明確設置字符編碼的能力。但是,當我查看System.IO
時,我沒有看到與字符編碼有關的任何內容。 (我有Haskell平臺2012.4.0.0)hSetEncoding去哪了?
我瞎了還是乾脆錯了?
我調查了其中的功能被隱藏。
摘要:請務必使用來自軟件包基礎的System.IO
,而不是從haskell2010軟件包中使用。
詳情: Hoogle告訴我,有最新基地包System.IO.hSetEncoding
。
檢查有關Haskell的平臺2012.4.0.0的文檔,我看到從haskell2010
包System.IO
模塊。並且該模塊似乎不包含hSetEncoding
。
但是不要絕望,似乎也可以從其中包含hSetEncoding
基地System.IO
。
所以我猜你只需要確保你使用來自基地System.IO
,而不是從haskell2010。
天啊!
好的,我只是想通了。
System.IO
- 在base
包和haskell2010
包。base
的模塊具有所有字符編碼內容。haskell2010
中包含的System.IO
的版本 - 沒有全部字符編碼內容。這似乎看到base
版本的唯一方法是單擊從base
出口一些其他的模塊上,然後單擊「目錄」,然後從那裏導航到System.IO
。 然後它顯示你正確的模塊!
反直覺,很多? O_O
好了,我發現我現在的功能,而人,黑線鱈也許應該做處理這種模糊的邊緣情況下更好的工作......
嗯,_my_本地安裝的模塊索引列出了「基本」版本。如果平臺的索引列出了'haskellXY'版本,我想你應該告訴平臺維護人員這是一個次優選擇。 –