1 | initial version |
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.0"
@Serializable
data class User(
val id: Int,
val name: String,
val email: String
)
import kotlinx.serialization.json.Json
val json = """
{
"id": 1,
"name": "John Doe",
"email": "johndoe@example.com"
}
""".trimIndent()
val user = Json.decodeFromString<User>(json)
println(user.id) // 1
println(user.name) // "John Doe"
println(user.email) // "johndoe@example.com"
You can also serialize your data classes into json strings:
val serializedString = Json.encodeToString(user)
println(serializedString) // {"id":1,"name":"John Doe","email":"johndoe@example.com"}
Note: Be sure to import kotlinx.serialization.json.Json at the top of your file.