有人可以给我一个使用filterLine或其他方法/机制来读取文件A中以abc开头的所有行并将这些行写入文件B的示例。谢谢。
答案 0 :(得分:9)
这是针对您的问题的单行解决方案:
new File("b.txt") << new File("a.txt").filterLine { it =~ /^abc/ }
答案 1 :(得分:7)
以下是一些基本示例。如果您查看GDK docs,您会看到有charset,append等选项。
File fileA = new File('c:/temp/file_a.txt')
File fileB = new File('c:/temp/file_b.txt')
fileA.filterLine(fileB.newWriter()) {
it.startsWith('abc')
}
fileB.withWriter { writer ->
fileA.filterLine { it =~ /^abc/ }.writeTo(writer)
}
答案 2 :(得分:0)
我不确定,但你可以尝试一下吗?
def file = new File("test.txt")
StringWriter writer = new StringWriter()
file.filterLine(writer) { line ->
line.startsWith("abc")
}
println writer.toString()