如果Groovy中不存在该文件,请创建该文件

时间:2016-04-21 15:11:46

标签: file-io groovy

我有一个Groovy脚本,我将文件从url下载到我的本地计算机,就像这样..

URL url = new URL("http://i.imgur.com/pszAeGh.png")
HttpURLConnection urlConn =  url.openConnection()
File pic = new File('/Users/me/Downloads', 'myimage.jpg')
pic.append(urlConn.getInputStream())

如果' myimage.jpg'在Downloads文件夹中不存在,我希望脚本创建它。我该如何指定?现在第3行给出了

java.io.FileNotFoundException: /Users/me/Downloads/myimage.jpg (No such file or directory)

Java的其他一些posts建议使用createNewFile方法,但Groovy即使在尝试创建文件时也会失败。

1 个答案:

答案 0 :(得分:5)

你应该能够做到:

new File('/Users/me/Downloads', 'myImage.gif').withOutputStream { os ->
    os << new URL("http://i.imgur.com/pszAeGh.png").openStream()
}

假设/Users/me/Downloads存在