如何解决无法在 groovy 中转换为漂亮的字符串
我正在调用 curl 以在 groovy 中休息 api 签证卷曲。响应很好,但响应非常大,它是 17MB 的数据,以下是我的脚本:
def converter = "curl.......'"
def initialSize = 4096
def out = new ByteArrayOutputStream(initialSize)
def err = new ByteArrayOutputStream(initialSize)
def process = [ 'bash','-c',converter].execute()
process.consumeProcessOutput(out,err)
process.waitFor()
Curl 响应很好,当我在控制台上打印响应,存储在变量中时,它给出响应数据,因为我看到一些“/n”字符,它不是整齐的 json。当我将其写入文件时,我看不到任何新行和整洁的 json,我只看到一行中的键值格式数据。
{"key1":"value1","key2":"value2",} in one huge line only
这是我在崇高中观看的时候。现在我想将其转换为漂亮的 json 并整齐地写入文件。我尝试遵循方法,但在控制台和文件中都打印为空 ({ })。
def json = JsonOutput.toJson(out)
println new JsonBuilder(out).toPrettyString()
我错过了什么?
我只尝试使用 groovy 库。
更新:
当我尝试调试时,我发现这可能是因为所有 JSON 解析器都需要字符串,但我的输出是 ByteArrayOutputStream。但是现在如何将 out 转换为 string ?我试过 out.toString 和 out.text,没用。
解决方法
使用 ...
get<{ options: Options[]; courses: any[] }>(`/courses?myParam=${myParam}`)().then((result) => { ... }
而不是 StringWriter
然后ByteArrayOutputStream
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。