读取文件夹中的文件,然后通过groovy执行某些操作

时间:2015-02-13 08:36:41

标签: groovy

我编写了一个脚本来读取文件,然后从指定的路径执行某些操作:

def file = new File(/"a.txt"/)
def s = []
s = file.filterLine  { it.contains("project ")}
def array = []
def a = []
array << s.toString().split(/(<|=|:|"|,|\/>)/)
a = array.find{ it.contains("SYN_3-1_M5_integration")}
b = a.findAll { it.startsWith("SYN_3")}
println b.unique()

我只想问我是否有很多txt文件如何使用上面的代码。我是Groovy的新手。提前谢谢!

1 个答案:

答案 0 :(得分:2)

以下代码应该完成这项工作:

import groovy.io.FileType

new File('PATH_TO_FOLDER').eachFile(FileType.FILES) { file ->
    def s = []
    s = file.filterLine  { it.contains("project ")} 
    def array = []
    def a = []
    array << s.toString().split(/(<|=|:|"|,|\/>)/)
    println array.toString() 
    a = array.find{ it.contains("SYN_3-1_M5_integration")} 
    println a
    b = a.findAll { it.startsWith("SYN_3")} 
    println b.unique()
}

基本上它会迭代使用 PATH_TO_FOLDER 指定的文件夹中的每个文件,并按照发布的方式进行处理。