【问题标题】:Saving Kotlin ByteArray into Realm将 Kotlin ByteArray 保存到领域
【发布时间】:2019-07-27 16:29:57
【问题描述】:

我想将位图保存到 Realm DB 中。我将位图转换为 ByteArray 并创建了 Realm 模型类:

    @RealmClass
    open class PictureModel : RealmObject() {

    @PrimaryKey
    var id: String = ""
    var picture : ByteArray = byteArrayOf()
    }

但是在编译过程中它给了我一个错误:

w: 警告:未关闭的文件类型;这些类型不会进行注释处理

Realm 应该支持 java byte[] 但 Kotlin ByteArrayArray<Byte>

【问题讨论】:

  • byteArrayOf()byte[] 的 Java 等价物。尝试使用@Required 制作picture
  • @Required 没有帮助
  • 对于任何有兴趣作为解决方法的人,我将图片类型更改为String,并在保存之前将ByteArray 转换为Stringval pictureAsString = pictureAsByteArray.toString(charset("ISO-8859-1"))。从 db 获取后,我将其转换回 ByteArray => picture.toByteArray(charset("ISO-8859-1"))

标签: android kotlin realm


【解决方案1】:

试试这个:

open class Test : RealmObject() {

    @PrimaryKey
     var id: String? = null
    var picture: ByteArray? = null
}

【讨论】:

    猜你喜欢
    • 2021-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多