gpt4 book ai didi

java - 一个常规的 ConfigObject 的 pretty-print ?

转载 作者:搜寻专家 更新时间:2023-11-01 03:12:09 26 4
gpt4 key购买 nike

我有一个 groovy 程序,它使用 ConfigObject 创建一个 groovy 配置文件。设置 ConfigObject 后,使用以下方法将其写入文件:

myFile.withWriter {writer -> myConfigObject.writeTo(writer)}

这导致 ConfigObject 的每个属性都写在一行上。因此,例如 map 将打印为:

graphs=[["type":"std", "host":"localhost", "name":"cpurawlinux"], ["type":"std", "host":"localhost", "name":"memory"], ["type":"std", "host":"localhost", "name":"udp"] ... ]

如果有人必须看一下,那是相当不可读的。有没有办法获得更友好的输出?这样的东西会很棒:

graphs=[
["type":"std", "host":"localhost", "name":"cpurawlinux"],
["type":"std", "host":"localhost", "name":"memory"],
["type":"std", "host":"localhost", "name":"udp"]
...
]

我知道我可以创建自己的 writeTo,但是 Groovy 中不是已经有相关的东西了吗?

最佳答案

不幸的是,您需要按照您所说的编写自己的writeTo

如果你有一个结构如下的配置文件:

graphs {
a=["type":"std", "host":"localhost", "name":"cpurawlinux"]
b=["type":"std", "host":"localhost", "name":"memory"]
}

然后 writeTo 会把它写出来,但是如果你的配置文件只是一个很大的旧列表,它会把它写成一个很大的旧列表

关于java - 一个常规的 ConfigObject 的 pretty-print ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7898068/

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