Junior
Jak pracować z JSON w Kotlin?
sobes.tech AI
Odpowiedź od AI
W Kotlinie praca z JSON najczęściej odbywa się za pomocą bibliotek stron trzecich. Najpopularniejsze:
- Jackson: Potężny i elastyczny.
- Gson: Łatwy w użyciu, od Google.
- kotlinx.serialization: Natualna serializacja/deserializacja Kotlin.
Przykład użycia kotlinx.serialization:
-
Dodaj zależności w
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") } -
Utwórz klasę data do modelowania struktury JSON:
// Klasa data do deserializacji JSON import kotlinx.serialization.Serializable @Serializable // Adnotacja do serializacji/deserializacji data class User( val name: String, val age: Int ) -
Deserializacja ciągu JSON do obiektu:
// Deserializacja ciągu JSON import kotlinx.serialization.json.Json val jsonString = """{"name":"Alice","age":30}""" val user = Json.decodeFromString<User>(jsonString) // user.name będzie "Alice", user.age będzie 30 -
Serializacja obiektu do ciągu JSON:
// Serializacja obiektu do ciągu JSON import kotlinx.serialization.json.Json val userToSerialize = User("Bob", 25) val jsonOutput = Json.encodeToString(userToSerialize) // jsonOutput będzie {"name":"Bob","age":25}
Wybór biblioteki zależy od wymagań projektu KMP (Kotlin Multiplatform), wydajności i wygody użytkowania. kotlinx.serialization jest preferowanym wyborem dla projektów KMP ze względu na swoją natywność.