Kotlin:
Работа с JSON

Как это делается:

Для работы с JSON в Kotlin можно использовать библиотеку kotlinx.serialization. Вот простой пример сериализации и десериализации класса данных.

import kotlinx.serialization.Serializable
import kotlinx.serialization.json.Json
import kotlinx.serialization.encodeToString
import kotlinx.serialization.decodeFromString

@Serializable
data class User(val name: String, val age: Int)

fun main() {
    val json = Json { prettyPrint = true }
    val userData = User("Джон Доу", 30)
    
    // Сериализация в JSON
    val jsonString = json.encodeToString(userData)
    println(jsonString)
    
    // Десериализация из JSON
    val userObj = json.decodeFromString<User>(jsonString)
    println(userObj)
}

Пример вывода:

{
    "name": "Джон Доу",
    "age": 30
}
User(name=Джон Доу, age=30)

Глубже

Простой синтаксис JSON имеет корни в JavaScript, но теперь он независим от языка. Альтернативы, такие как XML, более многословны. При работе с JSON в Kotlin библиотека kotlinx.serialization берет на себя основную работу, автоматически преобразуя объекты Kotlin в JSON и обратно с помощью аннотаций. Она поддерживает сложные типы данных и обрабатывает особые случаи, но если вам нужен более тесный контроль, ручной анализ JSON тоже является вариантом.

Смотрите также