ローカルファイルのアクセス
- Android
-
2011-12-13
この記事は最終更新日から1年以上経過しています。
ローカルファイルにアクセスする場合、ファイルのパスはOSが決めているのでアプリから指定する必要はありません。
読み込むときも書き込むときも、ファイル名のみ指定します。
【画像ファイル保存】※ビットマップは生成済と仮定します。
try {
FileOutputStream out = openFileOutput("a.jpg", Context.MODE_WORLD_READABLE);
bmp.compress(Bitmap.CompressFormat.JPEG, 100, out);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
Bitmapのcompressメソッドを使用します。
第一引数:ファイルのフォーマット
第二引数:クオリティ
第三引数:作成したOutputStreamを指定
【テキストファイル保存】
String s = "文字列";
try{
OutputStream out = openFileOutput("a.txt", MODE_PRIVATE);
PrintWriter writer =
new PrintWriter(new OutputStreamWriter(out, "UTF-8"));
writer.append(s);
writer.close();
}catch(IOException e){
e.printStackTrace();
}
【テキストファイル読込】
try{
InputStream in = openFileInput("a.txt");
BufferedReader reader =
new BufferedReader(new InputStreamReader(in, "UTF-8"));
String s;
while((s = reader.readLine()) != null){
Log.v(TAG, s);
}
reader.close();
}catch(IOException e){
e.printStackTrace();
}
| MODE_APPEND | 既存ファイルを追記モードで開きます。 |
|---|---|
| MODE_PRIVATE | ローカルファイルを作成したAndroidアプリのみにアクセス許可を与える場合に指定します。 |
| MODE_WORLD_READABLE | 他アプリから読み取り可能にします。 |
| MODE_WORLD_WRITEABLE | 他アプリから書込み可能にします。 |
| 複数指定したい場合は、上記定数を論理和で指定します。 | |
【ローカルファイルの削除】
deleteFile("a.txt");
この記事がお役に立ちましたらシェアお願いします
3,892 views




