Я схожу с ума, я создал файл-объект, поэтому его можно прочитать с помощью ObjectInputStream, и я поместил папку с ресурсами. Метод работает с файлом, меньшим 1M, и дает ошибку с большими файлами. Я читал, что это предел платформы Android, но я также знаю, что можно "легко" избежать. Те, кто загрузил игру Reging Thunder, например, могут легко увидеть, что в их папке с файлами находится файл размером 18.9M. Это мой код для чтения 1 объекта из ObjecInputStream
File f = File.createTempFile("mytempfile", "dat");
FileOutputStream fos = new FileOutputStream(f);
InputStream is = mc.getAssets().open(path,3);
ObjectInputStream ois=new ObjectInputStream(is);
byte[] data = (byte[]) ois.readObject();
fos.write(data);
fos.flush();
fos.close();
ois.close();
is.close();
теперь у меня есть несжатый файл, и я могу использовать его, не беспокоясь об ошибке "Этот файл не может быть открыт как файловый дескриптор, он, вероятно, сжат"
Эта функция хорошо работает с файлами размером менее 1 МБ, при этом большие файлы возвращают java.io.IOException в строке "ObjectInputStream ois = new ObjectInputStream (is);"
почему??