直截了当; 有没有办法从字符串生成有效的 Kotlin 字符串文字(非原始,如非三引号);我目前正在尝试使用KotlinPoet来完成此任务。
为清楚起见,示例输入:
Hello, how are you?
I'm doing "great"!
I hope you are too!
It'll cost you $2.
所需的示例输出:
"Hello, how are you?\nI'm doing \"great\"!\nI hope you are too!\nIt'll cost you \$2."
使用 KotlinPoet,迄今为止我从 API 中学到的最好的方法是:
"""
|Hello, how are you?
|I'm doing "great"!
|I hope you are too!
|It'll cost you ${'$'}2.
|""".trimMargin()
这虽然是功能性的,但不是我想要实现的。
我已经能够用 Jackson's 完成一些功能上接近的事情ObjectMapper::writeValueAsString
,但是,我确信使用它来生成有效的 Kotlin 代码有很多警告。