0

私の Android プロジェクトには、2M バイトの生データ ファイルがあります。私のアプリケーションは寿命の長いアプリなので、常に 2M のメモリを占有することは望ましくありません。データ ファイルはフォーマットされています。データ ファイルからデータが必要になったら、特定の位置をシークして数バイトを読み取るだけです。

Resource クラスは raw ファイルの InputStream のみを返すことができますが、InputStream はランダム読み取りを実行できません。

Android で生データ ファイルから数バイトをランダムに読み取る方法はありますか? または、数バイトしか必要ないときに、ファイル全体をメモリに読み込まなければなりません。

4

2 に答える 2

1

InputStreamでバイトをスキップしたり、 でskip()オフセットをマークしたり、マークされた位置に戻ることができます。ランダム IO を実行するために使用できるすべて。別のルックアップ ファイルにバイト オフセットを格納することもできます。mark()reset()

于 2013-07-03T09:19:41.253 に答える
0

Android は Java 上に構築されているため、次のチュートリアルをご覧ください: http://docs.oracle.com/javase/tutorial/essential/io/rafs.html

于 2013-07-03T09:18:40.410 に答える