代码之家  ›  专栏  ›  技术社区  ›  OJW

二进制读取android资产

  •  1
  • OJW  · 技术社区  · 14 年前

    void loadFile(InputStream filein){
    
      log(filein.available()); // returns 11310099
    
      int a = filein.read(); // returns -1 (i.e. EOF)
    }
    
    // Function was called using:
    loadFile(context.getAssets().open("filename.dat"));
    

    因此,如果available()正确地返回filehandle中有11MB的可用数据,那么read()如何在尝试读取第一个字节时立即返回-1?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Community Michael Schmitz    7 年前

    好吧,看来这是个骗局 Android Assets No Value Read? 而android正在悄悄地压缩文件,但在1MB的情况下却失败了。不过,filein.available()在这种情况下应该返回0?