SDカードにファイルを書き込む

Android端末に挿入されているSDカード上にファイルを作成し、データを書き込むことができる。Environment.getExternalStorageDirectoryメソッドでSDカードのパスが得られるので、後は通常のJavaでファイル操作を行う要領で必要なデータを書き込むだけである。

以下ではPrintWriterを利用してファイルに日時を書き出している。この書き方はSDカードのトップレベルにファイルを書き出しているが、可能であればディレクトリを作成してそこに書き込むのが良いだろう。

				SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
				PrintWriter writer = null;
            	try {
            		String filename = Environment.getExternalStorageDirectory().getPath() + File.separator + "data.txt";
            		writer = new PrintWriter(new BufferedWriter(new FileWriter(filename)));
				} catch (IOException e) {
					// TODO Auto-generated catch block
					Log.d("TestActivity", "Exception!", e);
				}
				writer.println(df.format(new Date()));
            	writer.close();

尚、上記のコードでは省略しているが、SDカードの場合はメディアが挿入されていない事もあり得るので予めEnvironment.getExternalStorageStateメソッドでメディアの状態をチェックすることが望ましい。

(2012/03/12)

新着情報
【iOS Objective-C, Swift Tips】アプリアイコンにバッジを表示(Swift)
【iOS Objective-C, Swift Tips】画像の向きを指定して保存する(Swift)
【iOS Objective-C, Swift Tips】UIImagePickerControllerの表示を日本語にする(Swift)

Copyright(C) 2004-2013 モバイル開発系(K) All rights reserved.
[Home]