Adroid学习之SD卡的操作(1)

随着android的学习我们通过Context的openFileInput或是openFileOutput来打开文件的输入输出流时,程序锁打开的都是应用程序的数据文件夹里面的文件,这样所存储的文件的大小可能比较有限——毕竟手机内置的存储空间是有限的。

为了更好的存取应用程序的大文件数据,应用程序需要读写SD卡上的文件。通过SD卡,大大的扩充了手机的存储能力。所以咱们就先来学习如何读写sd卡上的文件。

读、写SD卡上的文件通常有以下几个步骤:

   (1)调用Environment的getExternalStorageState()方法判断手机或是模拟器上是否安装了SD卡,并且应用程序具有读写的SD卡的权限。

(2)调用Environment的getExternalStorageDirectory()方法来获取外部存储器,也就是SD卡目录。

(3)使用FileInputStrean、FileOutputStrean、FileReader、FileWriter读写SD卡里的文件。

 两点注意事项:

a 确定手机或是模拟器上有sd卡。(没有新建可以参考lz的另一篇文章)

b 为了读写SD卡上的数据必须在程序清单AndroidManifest.xml中添加 读写权限。

lz写的时候只是在页面用了两个文本框。两个按钮,在此就不附上原代码了。

下面的是读写SD卡上文件的精华了,希望度大家有帮助。

楼主是先给两个按钮设置了监听事件,在监听事件里面调用自己写的read() 和write()方法,从而实现SD卡的读写操作。

这个read()和write()方法是读写SD卡文件的关键,大家可以自己保留下来日后开发时候可以直接拿过来用。

关键方法:

Environment.getExternalStorageDirectory() 在确定应用程序有读写SD卡的权限后调用此方法获取SD卡对应的存储目录。

(如果大家不喜欢使用Environment的方法来获取SD卡文件路径可以使用相对路径来代表SD卡的路径,然后程序通过半段路径是否存在就知道手机或模拟器是否存在SD卡了)

lz希望大家多多交流,共同进步。希望本章对你有用。

Adroid学习之SD卡的操作(1)

时间: 2024-10-12 19:50:49

Adroid学习之SD卡的操作(1)的相关文章

关于读、写SD卡的操作

1.点击按钮将assets文件夹中的内容复制到SD卡中. private void copyToSD() { // 检测SD卡是否挂载  Environment.MEDIA_MOUNTED 表示被挂载 // Environment.getExternalStorageState() 将返回sd卡的状态 if(! Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { Toast.makeText(thi

Android入门开发之SD卡读写操作(转)

SD卡的读写是我们在开发android 应用程序过程中最常见的操作.下面介绍SD卡的读写操作方式: 1. 获取SD卡的根目录 [java] view plaincopy String  sdCardRoot = Environment.getExternalStorageDirectory().getAbsolutePath(); 2. 在SD卡上创建文件夹目录 [java] view plaincopy /** * 在SD卡上创建目录 */ public File createDirOnSDC

linux下sd卡的操作(fdisk)

当你拿到一张sd卡,需要在linux环境下格式化.分区,修改参数的时候,请看过来. ubuntu虚拟机环境下 1,插入,用力点,因为有可能接触不良,导致电脑不识别. 2,cat /proc/partions 或者fdisk -l    (有些可能需要进入获得管理员权限,deei~命令前+sudo就行) 比如:cat /proc/partitions major minor  #blocks  name 2        0          4 fd0   8        0  1677721

android中对sd卡的 操作文件问题 创建目录 创建文件到指定目录

步骤 1 获取sd卡的路径 File root =Environment.getExternalStorageDirectory(); 2 确定要写文件的路径 String path =root.getAbsolutePath()+"/test2"+"/test3": 3 再把路径转化为file File file =new File(path); 4创建目录 file.mkdir(); 5在上述指定的目录写指定的文件 File file1 = new File(f

安卓SD卡的操作

/** * 得到常用路径 */ public void getDir(){ // /mnt/sdcard File root=Environment.getExternalStorageDirectory(); // /system File root=Environment.getRootDirectory(); // /cache File root=Environment.getDownloadCacheDirectory(); // /data File root=Environment

Android 异步加载图片,使用LruCache和SD卡或手机缓存,效果非常的流畅

转载请注明出处http://blog.csdn.net/xiaanming/article/details/9825113 异步加载图片的例子,网上也比较多,大部分用了HashMap<String, SoftReference<Drawable>> imageCache ,但是现在已经不再推荐使用这种方式了,因为从 Android 2.3 (API Level 9)开始,垃圾回收器会更倾向于回收持有软引用或弱引用的对象,这让软引用和弱引用变得不再可靠.另外,Android 3.0

Android 存储(本地存储 SD卡存储 SharedPreference SQLite ContentProvider)

本文出自:http://blog.csdn.net/dt235201314/article/details/73176149 源码下载欢迎Star(updating):https://github.com/JinBoy23520/CoderToDeveloperByTCLer 一丶慨述 本周的学习内容是Android存储,要求:数据库Sqlite相关操作,常用的文件存取方式,以及实用场景学习,主要学习Sqlite,SD卡文件操作,SharedPreference 二丶效果演示:         

第36章 SDIO—SD卡读写测试

第36章     SDIO-SD卡读写测试 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx参考手册>.<STM32F4xx规格书>.库帮助文档<stm32f4xx_dsp_stdperiph_lib_um.chm>以及SD简易规格文件<Physical Layer Simplified Specificatio

Android USB大容量存储时SD卡状态监听(转)

对SD卡状态监听,到现在为止我知道的有两种方式: 1.注册StorageEventListener来监听sd卡状态 StorageEventListener中有onStorageStateChanged()方法,当sd卡状态改变时,此方法会调用,对各状态的判断一般会用到Environment类,此类中包含的有关sd卡状态的常量有: MEDIA_BAD_REMOVAL:表明SDCard 被卸载前己被移除 MEDIA_CHECKING:表明对象正在磁盘检查 MEDIA_MOUNTED:表明sd对象是