我在C盘中有一个文件夹,里面有一些文件,我正在搜索groovy脚本来压缩该文件。可以任何一个plz帮助如何编写groovy脚本来压缩我需要在SoapUI中使用这个groovy脚本的文件夹。
谢谢,
Latiff。
答案 0 :(得分:1)
这样可行(致Solomon Duskis's solution)
import java.io.File
import java.io.FileInputStream
import java.io.FileOutputStream
import java.util.zip.ZipEntry
import java.util.zip.ZipOutputStream
//Your folder here
File topDir = new File('c:\\FilesToZip');
//Your zip file here
ZipOutputStream zipOutput = new ZipOutputStream(new FileOutputStream('c:\\zipfile.zip'));
int topDirLength = topDir.absolutePath.length()
topDir.eachFileRecurse
{ file ->
def relative = file.absolutePath.substring(topDirLength).replace('\\', '/')
if ( file.isDirectory() && !relative.endsWith('/'))
{
relative += "/"
}
ZipEntry entry = new ZipEntry(relative)
entry.time = file.lastModified()
zipOutput.putNextEntry(entry)
if( file.isFile() )
{
zipOutput << new FileInputStream(file)
}
}
zipOutput.close()