android:无法从文件读取flatbuffers数据

时间:2018-11-22 10:17:03

标签: android flatbuffers

我刚刚开始在项目中使用平面缓冲区。我编写了一个简单的演示应用程序。 github项目是here。该演示将预先打包的json转换为flatbuffers并将其保存为文件,并通过读取JSON和读取flatbuffers文件来打印时间成本。

似乎已成功将平面缓冲区保存到文件,我可以在应用程序间隔文件dir中看到文件 plugin ,并且其大小不为零,如果原始JSON大约为280k 50万。但是我无法从Flatbuffer读取数据。

读取 plugin 文件成功,但ByteBuffer为非零。但是在解析时

implementation 'com.firebaseui:firebase-ui-firestore:4.1.0'

我发现 length 为零。因此在解析时会出现一些问题。如何从flatbuffers文件读取它?

1 个答案:

答案 0 :(得分:0)

您对通过FileOutputStream.write从FlatBuffers获得的基础ByteBuffer执行FlatBufferBuilder.dataBuffer。该缓冲区存储FlatBuffer数据,但不一定从0开始,您需要从ByteBuffer.position开始写入。

另请参见https://google.github.io/flatbuffers/flatbuffers_guide_tutorial.html(选择Java)。