Android アプリケーションを作成するとき、Android 自体に保存する必要があるファイルがいくつかあります。
どうすればいいですか?
エラー音、オープニングビデオなどのローカルファイルがある場合は、それをあなたに配置しますassets folder of your project
。
実行時に動的データをダウンロードする必要がある場合は、このガイドを使用してください。
音楽ファイルなどのファイルを保持したい場合はreadme.txt
、フォルダー内の raw フォルダーを使用できres
ます。raw
そのため、フォルダー内にという名前のフォルダーを作成しres
ます。
raw フォルダ内に という名前のファイルがありreadme.txt
、Activity クラスが と呼ばれているとしMyActivity
ます。
これで、以下に示すように、ファイルの内容を文字列に読み取ることができます。
StringBuilder strContents = new StringBuilder();
String thisLine;
InputStream is = MyActivity.this.getResources().openRawResource(R.raw.readme);
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
while ((thisLine = br.readLine()) != null) { // while loop begins here
strContents.append(thisLine);
}
br.close();
//Now you have the data in strContents
または、assets
raw フォルダーには Android によって圧縮された最適化なしのファイルがそのまま含まれているため、これも使用できるフォルダーの 1 つです。
したがってassets
、プロジェクトのルート フォルダーにフォルダーを作成し、そこにファイルを配置しますmyfile
。
これで、以下に示すように、ファイル InputStream のインスタンスを取得できます。
InputStream is = getBaseContext().getAssets().open("mydb");
一般的なファイルに最適な場所はassets
フォルダーです。
たとえばAssetManager
、 を使用してファイルにアクセスできます。Activity.getAssets()
テキスト ファイルにアクセスする方法の例を次に示します。
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(getAssets().open("sometextfile.txt")));
// do stuff with br
} catch (IOException e) {
e.printStackTrace();
}
詳細については、Java DocAssetManager
を参照してください。そうそう、アセット内にフォルダーを作成できます。