在Haskell中创建一个临时目录

Pau*_*icz 11 haskell temporary-directory

在Haskell中安全地创建临时目录的正确方法是什么? System.IO提供的方法来创建临时文件,但我无法找到任何东西,确实为目录相同,既不存在也没有System.Directory,System.Posix.Directory也不System.Posix.Temp.有一个我忽略的功能,还是我需要自己写一个?(如果是这样,是否有任何可以避免的危险,就像创建临时文件一样?)

Don*_*art 7

为了专门使用Unix系统,Unixutils包中包含这样一个函数:

withTemporaryDirectory :: FilePath - >(FilePath - > IO a) - > IO a

如果您需要它在Windows和Unix系统上工作,您将需要使用临时包.它具有相同的功能,具有略微不同的类型签名:

withTemporaryDirectory :: FilePath - > String - >(FilePath - > IO a) - > IO a

  • 请注意,hackage上的[temporary](http://hackage.haskell.org/package/temporary)软件包具有许多功能.(是的,这是迟了一年,但这个问题很容易在谷歌上搜索) (5认同)
  • @ThomasM.DuBuisson你应该重新发布这个作为答案,因为它似乎更合适,因为它是平台无关的. (2认同)