[Android SQLite]データストレージとアクセス-外部ストレージ


次はSDカードですね^^;
すべての携帯電話にSDカードがあるわけではありませんが、Androidシステム自体はSDカードへのアクセスが便利です
一般的にダウンロードしたデータは大きいのでSDカードに入れます...具体的な原因、未知はははは
public class SD_Demo extends Activity implements OnClickListener
{
	private StringBuilder randomNumBersString = null;
	
	private TextView displayView = null;
	
	@Override
	protected void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main1);
		setupViews();
	}

	private void setupViews()
	{
		displayView = (TextView) findViewById(R.id.display);
		findViewById(R.id.random).setOnClickListener(this);
		findViewById(R.id.write).setOnClickListener(this);
		randomNumBersString = new StringBuilder();
	}

	@Override
	public void onClick(View v)
	{
		switch (v.getId())
		{
			case R.id.random:
				for (int i = 0; i < 10; i++)
				{
					randomNumBersString.append(Math.random()+"
"); } displayView.setText(randomNumBersString.toString()); break; case R.id.write: String fileName = "SdcardFile-"+System.currentTimeMillis()+".txt";; boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); File dir = null; if (sdCardExist) { dir = new File( Environment.getExternalStorageDirectory().toString() + File.separator + "123321"); if (!dir.exists()) { dir.mkdirs(); } } if (dir.exists() && dir.canWrite()) { File newFile = new File(dir.getAbsolutePath()+ "/" + fileName); FileOutputStream fos = null; try { newFile.createNewFile(); if (newFile.exists() && newFile.canWrite()) { fos = new FileOutputStream(newFile); fos.write(randomNumBersString.toString().getBytes()); displayView.setText(String.format("%s SD ", fileName)) ; } } catch (IOException e) { e.printStackTrace(); }finally { if (fos != null) { try { fos.flush(); fos.close(); } catch (IOException e) { e.printStackTrace(); } } } } break; } } }

とても価値のある参考文章
http://hi.baidu.com/tdskee/blog/item/af76a0515469bb08367abe8a.html