0
我遇到了一个函数,根据它的文档,可以抛出IOError
。我想处理这个。要处理IOError,我应该使用哪种方法?
看起来好像有多种方式。 Control.Exception
就是其中之一。另一个是System.IO.Error
。
- 是否还有别的办法吗?
- 您推荐使用哪种方式,为什么?或者每个人的利弊有哪些?
我遇到了一个函数,根据它的文档,可以抛出IOError
。我想处理这个。要处理IOError,我应该使用哪种方法?
看起来好像有多种方式。 Control.Exception
就是其中之一。另一个是System.IO.Error
。
type IOError = IOException
这样既完成在Control.Exception.Base,即catch
。 System.IO.Error只是一个专门化软件包,可以帮助您处理那些IO异常。
这里有一些建议:http://dev.stephendiehl.com/hask/#error-handling –
我相信'System.IO.Error'实际上是从'Control.Exception'使用'catch' [under (https://hackage.haskell.org/package/base-4.9.0.0/docs/src/System.IO.Error.html#catchIOError) – Alec
@Alec。是的,['catchIOError = catch'](https://hackage.haskell.org/package/base-4.9.0.0/docs/src/System.IO.Error.html#catchIOError) – Cirdec