android 访问SD卡的方法

android开发的时候经常要将数据写到外部存储器上。

访问SD卡很简单,只需要判断目录"/sdcard"是否存在:

 

 1                 String fileName="test-"+System.currentTimeMillis()+".txt";
2 File dir=new File("/sdcard");
3 if (dir.exists() && dir.canWrite()){
4 File newFile=new File(dir.getAbsolutePath()+"/"+fileName);
5 FileOutputStream fos=null; 6
7 try{
8 newFile.createNewFile();
9 if (newFile.exists() && newFile.canWrite()){
10 fos=new FileOutputStream(newFile);
11 fos.write("ljx love 00".getBytes());
12 }
13 }
14 catch(IOException e){
15 e.printStackTrace();
16 }
17 finally{
18 if (fos!=null){
19 try{
20 fos.flush();
21 fos.close();
22 }
23 catch(IOException e){}
24 }
25 }
26 }

就这么简单吧,其实就是找目录"/sdcard"

 

当然还有别的方式,比如:

if (Environment.getExternalStorageState().equals((Environment.MEDIA_MOUNTED))){
File sdCardDir=Environment.getExternalStorageDirectory();
File saveFile=new File(sdCardDir,date+".txt");
try{
saveFile.createNewFile();
}
catch(IOException e1){
Toast.makeText(getApplicationContext(), e1.getMessage(),Toast.LENGTH_SHORT).show();
}
try{
fos=new FileOutputStream(saveFile);
}
catch(FileNotFoundException e){
Toast.makeText(getApplicationContext(), e.getMessage(),Toast.LENGTH_SHORT).show();
}
}



posted on 2012-02-29 20:33  leavingseason  阅读(4964)  评论(0编辑  收藏  举报

导航

Bye!