gpt4 book ai didi

groovy - 在 Groovy 中解析固定长度记录的好库是什么?

转载 作者:行者123 更新时间:2023-12-05 01:37:41 25 4
gpt4 key购买 nike

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

8 个月前关闭。




Improve this question




我想要一个库,我可以给它一个文件和一个列长度、名称和可能的类型的配置参数,并从中获取每行列的映射。

我自己做这件事并不难,但如果还没有很好的解决方案,我会感到惊讶。我试过寻找一个,但没有运气。

最佳答案

我不知道有什么专门针对 groovy 的。我用正则表达式做了类似的事情;这是一个基于这种方法的快速而肮脏的解析器:

def input =
"JOHN DOE 123 \n" +
"JANE ROE 456 \n"

def fieldDefs = [firstName: 10, lastName: 10, someValue: 10]

def pattern = "^" + fieldDefs.collect { k, v -> "(.{$v})" }.join('') + "\$"

rows = []
input.eachLine { line ->
def m = line =~ pattern
if (m) {
def names = fieldDefs.keySet() as List
def values = m[0][1..-1].collect { it.trim() }
rows << [names, values].transpose().collectEntries{it}
}
}

关于groovy - 在 Groovy 中解析固定长度记录的好库是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7743364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com