搬运自本人技术博客 xge技术博客, 原文链接:
http://www.xgezhang.com/android_save_file_in_sdcard.html
目前市面上大部分的安卓手机都是支持sd卡的,这里介绍一下如何保存文件到sd卡,及sd卡操作的一些方法。
保存文件到sd卡和保存到手机内存代码差不多,无非就是保存的路径发生了一些变化,以及加入了一些权限的问题。关于保存文件到手机内存可以先看这篇文章
sd卡存储的目录为/mnt/sdcard,而为了使用方便,安卓系统已经建立好了/sdcard ->/mnt/sdcard的链接,因此我们的文件只需要保存到这一路径下即可,但对于有些手机,sdcard文件名可能不统一,安卓工程师为我们提供了一个统一的api来调用sdcard的路径:
1
|
File file =
new
File(Environment.getExternalStorageDirectory().toString(),
"userinfo.txt"
);
|
在写文件上需要注意,出于安全考虑,如果我们需要在sd卡上执行写的操作,必须在Manifest文件中加上android.permission.WRITE_EXTERNAL_STORAGE的权限。
默认情况下,读取sd卡操作是不需要权限的,不过在4.0版本之后,安卓系统提供了可供用户选择的读文件保护选项,如果用户勾选了这一选项,那么程序也需要提供android.permission.READ_EXTERNAL_STORAGE权限才可以进行读操作了。
另外,在对sd卡进行操作的时候,我们也需要考虑到sd卡是否运行正常的问题。我们可以通过如下代码进行判断:
1
2
3
4
5
6
7
|
public
boolean
isHavedSDcard() {
if
(Environment.getExternalStorageState().equals(
Environment.MEDIA_MOUNTED))
return
true
;
else
return
false
;
}
|
欢迎转载,请注明出处。