2016-02-29 41 views
2

测试时,我想阅读,并从和到磁盘写入文件(JSON中,JSON出)。我如何在PureScript中执行此操作?在Haskell我有类似如何读取PureScript(READFILE)的文件

main :: IO() 
main = do 
    input <- readFile "input.json" 
    writeFile "output.json" $ process input 

我所有的努力,到目前为止都失败了,包括试图用readFileimport Node.FS.Sync

顺便说一句,如果在我的JSON文件中读取任何其他(更好)的方式,让我知道。 (我不是一个JavaScript专家,但我想端口一些 - 严 - Haskell代码以JS,以便它可以在别处使用)

+0

什么错误你从'readFile'获得了吗? –

+0

阅读Node上的JSON文件的另一种方法是使用'require'。 –

+0

我得到'未知值绑定'。也许我忘了'import prelude',挂在... – 0dB

回答

3

这里是一个完整的工作示例,读取和打印文件。

module Main where 

import Prelude (Unit) 

import Control.Bind ((=<<)) 
import Control.Monad.Eff (Eff) 
import Control.Monad.Eff.Console (CONSOLE, log) 
import Control.Monad.Eff.Exception (EXCEPTION) 

import Node.Encoding (Encoding(..)) 
import Node.FS (FS) 
import Node.FS.Sync (readTextFile) 

main :: forall e. Eff (console :: CONSOLE, err :: EXCEPTION, fs :: FS | e) Unit 
main = do 
    log =<< readTextFile UTF8 "input.json" 

依赖关系:

  • purescript控制台
  • purescript-EFF
  • purescript-数学
  • purescript节点-FS-AFF
  • purescript控制
+0

我认为err :: EXCEPTION已被重命名为exception :: EXCEPTION。 –