You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin中如何为JSON字符串添加换行并嵌入变量?

解决Kotlin中JSON字符串换行与变量替换问题

1. 为JSON字符串添加换行(修复多行字符串语法错误)

Kotlin里实现多行可读字符串的正确语法是用**三个双引号(""")**包裹内容,而非单个反引号。这种写法允许直接写入换行、缩进,不用手动加\n转义符,天然就能提升JSON的可读性。

示例代码:

val myString = "some string"
val myObjectJson = """
{
    "example1": "value",
    "example2": "$myString"
}
""".trimIndent() // trimIndent() 会移除所有行开头的公共空白缩进,让JSON格式更整洁

2. 在JSON字符串中使用变量

在Kotlin多行字符串里,可以直接用$引用变量,但要遵守JSON语法规则:字符串类型的变量必须被双引号包裹,否则会导致JSON格式非法。

如果变量内容包含特殊字符(比如双引号、反斜杠),手动拼接JSON很容易触发格式错误,更稳妥的方式是借助ObjectMapper直接序列化对象,而非手动拼接字符串:

// 先定义对应的数据类
data class MyClass(val example1: String, val example2: String)

val myString = "some string"
// 创建对象实例
val myObject = MyClass("value", myString)
// 生成带换行、缩进的格式化JSON
val formattedJson = objectMapper.writerWithDefaultPrettyPrinter()
    .writeValueAsString(myObject)

这种方式既避免了手动拼接的语法问题,还能自动处理特殊字符的转义,同时writerWithDefaultPrettyPrinter()会自动生成可读性强的格式化JSON。

内容的提问来源于stack exchange,提问作者user3145047

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 12:00:54