분명히 다른 언어에서는 ByteArray 의 Binary 데이터를 `data class`
(혹은 다른 언어에서는 struct) 의 타입에 맞게 적절하게 자동으로
Deserialization 해서 넣어줄 수 있는 기능을 갖추고 있었는데, Kotlin 은 지금까지 찾아본 바로는
일일히 데이터를 읽어서 (타입에 맞게 읽어서), 수동으로 해줘야 하는 것 같더군요...
아...
JVM 의 맛을 느껴보고 싶어서 왔는데 도망가야 되겠습니다...
분명히 다른 언어에서는 ByteArray 의 Binary 데이터를 `data class`
(혹은 다른 언어에서는 struct) 의 타입에 맞게 적절하게 자동으로
Deserialization 해서 넣어줄 수 있는 기능을 갖추고 있었는데, Kotlin 은 지금까지 찾아본 바로는
일일히 데이터를 읽어서 (타입에 맞게 읽어서), 수동으로 해줘야 하는 것 같더군요...
아...
JVM 의 맛을 느껴보고 싶어서 왔는데 도망가야 되겠습니다...
plugins {
id 'org.jetbrains.kotlin.plugin.serialization' version '1.5.0'
}
dependencies {
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.2"
}
하시고.. 뭐 이런식으로..
import kotlinx.serialization.*
import kotlinx.serialization.cbor.Cbor
@Serializable
data class ExampleDataClass(val a: Int, val b: String)
fun main() {
// 예제 이진 데이터
val binaryData: ByteArray = ...
// CBOR 형식으로 역직렬화
val decoded = Cbor.decodeFromByteArray<ExampleDataClass>(binaryData)
println(decoded)
}