Назад к вопросам
Junior
133
questionbank
Как работать с JSON в Kotlin?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
В Kotlin работа с JSON чаще всего осуществляется с использованием сторонних библиотек. Наиболее популярные:
- Jackson: Мощная и гибкая.
- Gson: Простая в использовании, от Google.
- kotlinx.serialization: Нативная сериализация/десериализация Kotlin.
Пример использования kotlinx.serialization:
-
Добавление зависимостей в
build.gradle.kts:// build.gradle.kts plugins { kotlin("jvm") version "1.9.22" kotlin("plugin.serialization") version "1.9.22" } repositories { mavenCentral() } dependencies { implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0") } -
Создание data class для моделирования JSON-структуры:
// Data class для десериализации JSON import kotlinx.serialization.Serializable @Serializable // Аннотация для сериализации/десериализации data class User( val name: String, val age: Int ) -
Десериализация JSON-строки в объект:
// Десериализация JSON строки import kotlinx.serialization.json.Json val jsonString = """{"name":"Alice","age":30}""" val user = Json.decodeFromString<User>(jsonString) // user.name будет "Alice", user.age будет 30 -
Сериализация объекта в JSON-строку:
// Сериализация объекта в JSON строку import kotlinx.serialization.json.Json val userToSerialize = User("Bob", 25) val jsonOutput = Json.encodeToString(userToSerialize) // jsonOutput будет {"name":"Bob","age":25}
Выбор библиотеки зависит от требований проекта KMP (Kotlin Multiplatform), производительности и удобства использования. kotlinx.serialization является предпочтительным выбором для KMP проектов благодаря своей нативности.