面对"RangeError: Not enough bytes available."当我尝试从 Hive db 获取值时



我有一个应用程序,发送一个类型的数据库在Hive和在我的适配器,我有方法读取和写入我的所有变量。问题在于这个变量:

@HiveField(5)
String? imoString;

这一行负责读取适配器中的变量:

model.imoString = reader.readString();

这个是写:

writer.writeString(model.imoString ?? "");

我100%确定我正确地保存了变量(类型字符串和值作为用户在屏幕上写的值),因为我可以在write方法中打印它。但是当我重新加载应用程序并调用方法get from db时,我面临指向model.imoString = reader.readString();:

行的错误
Unhandled Exception: RangeError: Not enough bytes available.

我能做什么?

我试着用阅读器阅读。读,但它不工作,以及对象:变量在读和写方法中的顺序正确

编辑我发现,如果我在读和写中注释这个适配器的第一项,它就可以工作了。第一个元素是另一个有自己适配器的模型(它有很多变量)

您可以尝试将读取和写入的所有变量更改为仅read()write(),而不使用

类型

相关内容

  • 没有找到相关文章

最新更新