двоичное чтение активов Android - PullRequest
1 голос
/ 01 августа 2010

Попытка прочитать двоичный файл данных в каталоге активов приложения Android:

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 () правильно возвращает, что в дескрипторе файла доступно 11 МБ данных, как read () может немедленно вернуть -1, как только я попытаюсь прочитать первый байт?

1 Ответ

0 голосов
/ 01 августа 2010

ОК, похоже, что это обман Активы Android не имеют значения для чтения? и Android тихо сжимает файл с ошибкой 1 МБ.Тем не менее, filein.available (), вероятно, должен вернуть 0 в этом случае?

...