如何使用Algolia使用ArrayList <String>和Date类型的KotlinX序列化

我正在尝试将kotlinx serialization与Algolia一起用于类型ArrayList<String>Date,但无法弄清楚serialization技术。任何指针,因为我诉诸于Algolia不推荐的手动方式。

gush5051 回答:如何使用Algolia使用ArrayList <String>和Date类型的KotlinX序列化

选中此

kotlinx.serialization

shared_ptr

在应用程序启动时注册它:

import kotlinx.serialization.*
import kotlinx.serialization.internal.*
import java.util.*

@Serializable
class DateWrapper(val date: Date)

@Serializer(forClass = Date::class)
object DateSerializer: KSerializer<Date> {
    private val df: DateFormat = SimpleDateFormat("dd/MM/yyyy HH:mm:ss.SSS")

    override fun save(output: KOutput,obj: Date) {
        output.writeStringValue(df.format(obj))
    }

    override fun load(input: KInput): Date {
        return df.parse(input.readStringValue())
    }

    override val serialClassDesc: KSerialClassDesc = SerialClassDescImpl("Date")
}

kotlinx.serialization.registerSerializer("java.util.Date",DateSerializer) 将给您{“日期”:[“日期”,“ 10/11/2019 12:50:10.665”]}

本文链接:https://www.f2er.com/2754677.html

大家都在问