我有一个带有嵌套字段的GenericRecord。当我使用genericRecord.get(1)时,它返回一个包含嵌套AVRO数据的对象。

我希望能够访问该对象,例如genericRecord.get(1).get(0),但是我不能,因为AVRO返回了一个对象。

有没有解决此问题的简单方法?

当我做类似returnedObject.get("item")的事情时,它说item not a member of returnedObject

最佳答案

我想出了一种方法。将返回的Object强制转换为GenericRecord

示例(标量):
val data_nestedObj = (data.get("nestedObj")).asInstanceOf[GenericRecord]
然后,我可以通过执行以下操作来访问该新GenericRecord中的嵌套字段:
data_nestedObj.get("nestedField")
这对我来说足够好了。

10-07 14:09