Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Groovy-压缩目录中的所有文件夹_Groovy_Zip_Directory - Fatal编程技术网

Groovy-压缩目录中的所有文件夹

Groovy-压缩目录中的所有文件夹,groovy,zip,directory,Groovy,Zip,Directory,我有一个文件夹,位于C:\Program Files\VideoEditing,在那里我目前有大约30个文件夹,我想压缩。在压缩它的同时,我想为每个新压缩的文件夹添加一个图像。(图像位置为C:\ProgramFiles\VideoEditing\art.png) 我想知道这在groovy中是否/如何可能 我的目标是在我的视频编辑目录中有60个文件/文件夹。(30个为原件,30个带图像的压缩版本) 我将继续搜索关于这个主题的更多信息,但我想我还是把它贴出来,以防有人已经知道如何去做了 编辑 根据

我有一个文件夹,位于
C:\Program Files\VideoEditing
,在那里我目前有大约30个文件夹,我想压缩。在压缩它的同时,我想为每个新压缩的文件夹添加一个图像。(图像位置为
C:\ProgramFiles\VideoEditing\art.png

我想知道这在groovy中是否/如何可能

我的目标是在我的视频编辑目录中有60个文件/文件夹。(30个为原件,30个带图像的压缩版本)

我将继续搜索关于这个主题的更多信息,但我想我还是把它贴出来,以防有人已经知道如何去做了

编辑

根据andrei1089关于使用AntBuilder的建议,我假设代码如下所示:

File file = new File('C:\\Program Files\\VideoEditing')

fileDir = []
def ant = new AntBuilder()
int i = 0

file.eachDir {
    fileDir << it
}

fileDir.each { 
    ant.zip(//new file name = VidFolder_$i,
        //include folder,
        //include art.png,)    
}
File File=new文件('C:\\Program Files\\VideoEditing')
fileDir=[]
def ant=new AntBuilder()
int i=0
file.eachDir{

fileDir您可以尝试使用AntBuilder。可以找到一些有用的示例

对于简单的情况,文件集可以很好地工作

new AntBuilder().with {
  new File('src').eachDir {dir->
    zip destfile: "${dir.name}.zip", {
      fileset dir: dir
      fileset file: 'src/file.txt'
    }
  }
}
可以在中找到几个几乎直接适用的示例


是否有一个示例说明如何包含每个目录而不是文件类型?