android:cannot read the flatbuffers data from file












0















I just started useing flatbuffers in my project. I write a simple demo application. The github project is here. This demo converts the pre-packaged json to flatbuffers and saves it the file, and prints the time cost by reading from JSON and reading from the flatbuffers file.



It seems successfully save the flatbuffer to file, I can see the file, plugin, in the application interval file dir and its size is not zero, which is about 280k if the original JSON is about 500k. But I failed to read the data from flatbuffer.



Reading the plugin file is successful, the ByteBuffer is non-zero. But when parsing it



    Plugins plugins = Plugins.getRootAsPlugins(byteBuffer);
int length = plugins.pluginLength();


I find the length is zero. So there is some problems when parsing it. How to read it from the flatbuffers file?










share|improve this question



























    0















    I just started useing flatbuffers in my project. I write a simple demo application. The github project is here. This demo converts the pre-packaged json to flatbuffers and saves it the file, and prints the time cost by reading from JSON and reading from the flatbuffers file.



    It seems successfully save the flatbuffer to file, I can see the file, plugin, in the application interval file dir and its size is not zero, which is about 280k if the original JSON is about 500k. But I failed to read the data from flatbuffer.



    Reading the plugin file is successful, the ByteBuffer is non-zero. But when parsing it



        Plugins plugins = Plugins.getRootAsPlugins(byteBuffer);
    int length = plugins.pluginLength();


    I find the length is zero. So there is some problems when parsing it. How to read it from the flatbuffers file?










    share|improve this question

























      0












      0








      0








      I just started useing flatbuffers in my project. I write a simple demo application. The github project is here. This demo converts the pre-packaged json to flatbuffers and saves it the file, and prints the time cost by reading from JSON and reading from the flatbuffers file.



      It seems successfully save the flatbuffer to file, I can see the file, plugin, in the application interval file dir and its size is not zero, which is about 280k if the original JSON is about 500k. But I failed to read the data from flatbuffer.



      Reading the plugin file is successful, the ByteBuffer is non-zero. But when parsing it



          Plugins plugins = Plugins.getRootAsPlugins(byteBuffer);
      int length = plugins.pluginLength();


      I find the length is zero. So there is some problems when parsing it. How to read it from the flatbuffers file?










      share|improve this question














      I just started useing flatbuffers in my project. I write a simple demo application. The github project is here. This demo converts the pre-packaged json to flatbuffers and saves it the file, and prints the time cost by reading from JSON and reading from the flatbuffers file.



      It seems successfully save the flatbuffer to file, I can see the file, plugin, in the application interval file dir and its size is not zero, which is about 280k if the original JSON is about 500k. But I failed to read the data from flatbuffer.



      Reading the plugin file is successful, the ByteBuffer is non-zero. But when parsing it



          Plugins plugins = Plugins.getRootAsPlugins(byteBuffer);
      int length = plugins.pluginLength();


      I find the length is zero. So there is some problems when parsing it. How to read it from the flatbuffers file?







      android flatbuffers






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 22 '18 at 10:17









      mianlaoshumianlaoshu

      4881721




      4881721
























          1 Answer
          1






          active

          oldest

          votes


















          0














          You do a FileOutputStream.write on the underlying ByteBuffer you got from FlatBuffers via FlatBufferBuilder.dataBuffer. This buffer stores the FlatBuffer data, but it does not necessarily start at 0, you need to write from ByteBuffer.position onwards.



          See also https://google.github.io/flatbuffers/flatbuffers_guide_tutorial.html (select Java).






          share|improve this answer
























          • Why don't you read the link above?

            – Aardappel
            Nov 23 '18 at 15:45











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53428650%2fandroidcannot-read-the-flatbuffers-data-from-file%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          0














          You do a FileOutputStream.write on the underlying ByteBuffer you got from FlatBuffers via FlatBufferBuilder.dataBuffer. This buffer stores the FlatBuffer data, but it does not necessarily start at 0, you need to write from ByteBuffer.position onwards.



          See also https://google.github.io/flatbuffers/flatbuffers_guide_tutorial.html (select Java).






          share|improve this answer
























          • Why don't you read the link above?

            – Aardappel
            Nov 23 '18 at 15:45
















          0














          You do a FileOutputStream.write on the underlying ByteBuffer you got from FlatBuffers via FlatBufferBuilder.dataBuffer. This buffer stores the FlatBuffer data, but it does not necessarily start at 0, you need to write from ByteBuffer.position onwards.



          See also https://google.github.io/flatbuffers/flatbuffers_guide_tutorial.html (select Java).






          share|improve this answer
























          • Why don't you read the link above?

            – Aardappel
            Nov 23 '18 at 15:45














          0












          0








          0







          You do a FileOutputStream.write on the underlying ByteBuffer you got from FlatBuffers via FlatBufferBuilder.dataBuffer. This buffer stores the FlatBuffer data, but it does not necessarily start at 0, you need to write from ByteBuffer.position onwards.



          See also https://google.github.io/flatbuffers/flatbuffers_guide_tutorial.html (select Java).






          share|improve this answer













          You do a FileOutputStream.write on the underlying ByteBuffer you got from FlatBuffers via FlatBufferBuilder.dataBuffer. This buffer stores the FlatBuffer data, but it does not necessarily start at 0, you need to write from ByteBuffer.position onwards.



          See also https://google.github.io/flatbuffers/flatbuffers_guide_tutorial.html (select Java).







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 22 '18 at 15:34









          AardappelAardappel

          2,48911213




          2,48911213













          • Why don't you read the link above?

            – Aardappel
            Nov 23 '18 at 15:45



















          • Why don't you read the link above?

            – Aardappel
            Nov 23 '18 at 15:45

















          Why don't you read the link above?

          – Aardappel
          Nov 23 '18 at 15:45





          Why don't you read the link above?

          – Aardappel
          Nov 23 '18 at 15:45


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53428650%2fandroidcannot-read-the-flatbuffers-data-from-file%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Costa Masnaga

          Fotorealismo

          Create new schema in PostgreSQL using DBeaver