【发布时间】:2013-06-15 13:47:48
【问题描述】:
我想我的大脑快湿透了。有人可以解释为完成以下任务的最佳方式吗?
我想打开一个文件,用它做一些事情,然后关闭它。我想确保在所有情况下,文件肯定是关闭的。如果打开文件失败(不存在、访问被拒绝等),我还想运行特定的 I/O 操作
为了清理,我大概想要bracket,为了处理打开失败,我大概想要try 的一些变体。但我无法决定将这些组合在一起的最佳方式,以便它做正确的事情,而不留下任何“差距”(在错误时刻出现异常可能会破坏东西的地方)。
【问题讨论】:
标签: haskell exception-handling io