如何将一个字符串传递给Kotlin中没有转义符号的variables?

我希望将字符串{"name":"My Settings 1"}传递给var aa

我必须使用代码var aa=" {\"name\":\"My Settings 1\"} "

当我使用Android Studio 3.0时,Kotlin中有一个简单的方法吗?

我知道适合XML内容

像在你的例子中那样,在常规String转义特殊字符是Java和Kotlin所要做的:

 "{\"name\":\"My Settings 1\"}" 

Kotlin提供了原始字符串来回避这一点。 在这些原始String不需要转义特殊的字符,它显示了以下内容:

  """{"name":"My Settings 1"}""" 

原始字符串由三个引号( """ )分隔。请阅读文档。

你可以在Kotlin中做的最简单的事情是使用带有三个引号的原始字符串 :

 val a = """{"name":"My Settings 1"}""" 

对于工具解决方案而不是语言解决方案(所以这在Kotlin和Java中都可以使用),您可以在Android Studio或IntelliJ中使用语言注入 。

  1. 创建一个字符串,并用Alt + Enter在其上调用意图操作。 选择Inject language or reference ,然后选择JSON

    注入语言或参考

    JSON

  2. 再次使用Alt + Enter,然后选择Edit JSON Fragment

    编辑JSON片段

  3. 编辑底部出现的面板中的原始JSON,IntelliJ将自动将其内容镜像到字符串中,转义任何必须转义的字符。

    JSON片段编辑器的屏幕截图