`
flycomos.lee
  • 浏览: 280476 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

sdcard

 
阅读更多

把文件放入SD卡

 

使用Activity的openFileOutput()方法保存文件,文件是存放在手机空间上,一般手机的存储空间不是很大,存放些小文件还行, 如果要存放像视频这样的大文件,是不可行的。对于像视频这样的大文件,我们可以把它存放在SDCard。 SDCard是干什么的?你可以把它看作是移动硬盘或U盘。

在模拟器中使用SDCard,你需要先创建一张SDCard卡(当然不是真的SDCard,只是镜像文件)。创建SDCard可以在Eclipse创建模拟器时随同创建,也可以使用DOS命令进行创建,如下:

在Dos窗口中进入android SDK安装路径的tools目录,输入以下命令创建一张容量为2G的SDCard,文件后缀可以随便取,建议使用.img:

mksdcard 2048M D:\AndroidTool\sdcard.img

在程序中访问SDCard,你需要申请访问SDCard的权限。

在AndroidManifest.xml中加入访问SDCard的权限如下:

<!-- 在SDCard中创建与删除文件权限 -->

<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

<!-- 往SDCard写入数据权限 -->

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

 

要往SDCard存放文件,程序必须先判断手机是否装有SDCard,并且可以进行读写。

注意:访问SDCard必须在AndroidManifest.xml中加入访问SDCard的权限

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){

         File sdCardDir = Environment.getExternalStorageDirectory();//获取SDCard目录

         File saveFile = new File(sdCardDir, “a.txt”);

       FileOutputStream outStream = new FileOutputStream(saveFile);

         outStream.write("test".getBytes());

         outStream.close();

}

Environment.getExternalStorageState()方法用于获取SDCard的状态,如果手机装有SDCard,并且可以进行读写,那么方法返回的状态等于Environment.MEDIA_MOUNTED。

Environment.getExternalStorageDirectory()方法用于获取SDCard的目录,当然要获取SDCard的目录,你也可以这样写:

File sdCardDir = new File("/sdcard"); //获取SDCard目录

File saveFile = new File(sdCardDir, "itcast.txt"); 

//上面两句代码可以合成一句: File saveFile = new File("/sdcard/a.txt");

FileOutputStream outStream = new FileOutputStream(saveFile);

outStream.write("test".getBytes());

outStream.close();

 

 

Environment.MEDIA_MOUNTED // sd卡在手机上正常使用状态
Environment.MEDIA_UNMOUNTED // 用户手工到手机设置中卸载sd卡之后的状态
Environment.MEDIA_REMOVED // 用户手动卸载,然后将sd卡从手机取出之后的状态
Environment.MEDIA_BAD_REMOVAL // 用户未到手机设置中手动卸载sd卡,直接拨出之后的状态
Environment.MEDIA_SHARED // 手机直接连接到电脑作为u盘使用之后的状态
Environment.MEDIA_CHECKINGS // 手机正在扫描sd卡过程中的状态

在做android开发对sd操作时,最好是sd卡处于Environment.MEDIA_MOUNTED状态时,对sd卡上的文件进行操作,其他状态不宜进行操作。

分享到:
评论

相关推荐

    Android 平台上SDCard的自动mount的解决方法

    ### Android平台上SDCard的自动mount的解决方法 在Android设备中,SDCard(Secure Digital Card)作为外部存储介质被广泛使用。为了使Android系统能够自动识别并挂载SDCard,需要进行一系列配置与调试工作。本文将...

    修改system读取sdcard权限.rar

    在Android系统中,由于安全性和隐私保护的考虑,对应用程序访问外部存储卡(SDcard)的权限有着严格的控制。在Android 6.0(API级别23)之后,系统引入了运行时权限管理机制,应用需要在运行时请求访问SDcard的权限...

    安卓模拟器sdcard.img文件打开修改

    这时,就需要了解如何打开并修改安卓模拟器的`sdcard.img`文件。`sdcard.img`文件是Android模拟器中代表SD卡的镜像文件,它包含了模拟器SD卡的所有数据。下面我们将详细探讨如何处理这个文件以及相关的工具。 1. **...

    android 读取外置SDCard

    在Android系统中,外置SDCard(也称为外部存储)是设备上用于扩展存储空间的区域,用户可以在这个空间上存储各种数据,如媒体文件、应用程序数据等。本篇文章将详细探讨如何在Android应用中实现对外置SDCard的读取、...

    SDcard 接口 协议 时序图

    SDcard接口是移动存储设备,如手机、相机和多媒体播放器等广泛使用的标准。它允许设备与SD(Secure Digital)存储卡进行数据交换。本文将深入探讨SDcard接口的协议、时序图及相关知识点。 首先,我们需要理解SDcard...

    TI_SDCard_boot_utility_v1_0.exe

    标题中的"TI_SDCard_boot_utility_v1_0.exe"是一个特定的程序,由TI(Texas Instruments)公司开发,用于SD卡的启动和管理。这个工具可能是一个实用程序,帮助用户格式化、初始化或者配置SD卡以供特定的TI处理器或微...

    检测当前系统中是否存在sdcard,并在sdcard中创建一个文件

    在Android开发中,外部存储(通常称为SDcard)是用于扩展设备存储空间的重要部分。本文将深入探讨如何检测Android系统是否支持SDcard,并在SDcard上创建并写入文件,主要涉及的技术点包括Android的存储权限、SDcard...

    android中sdcard的读写.doc

    ### Android中SDCard的读写操作详解 #### 一、SDCard访问概述 在Android开发过程中,对于外部存储(如SDCard)的读写是非常常见的需求。本文将详细介绍如何在Android应用中对SDCard进行读写操作,包括获取缓存目录...

    Android获取sdcard 信息

    ### Android获取SDCard信息详解 在Android开发中,获取SDCard的信息是一项常见需求,尤其是在需要监控存储空间、读写文件等场景下。本文将详细解析如何在Android应用中获取SDCard的状态、总容量、可用容量以及如何...

    android 写入SDcard 文件

    在Android平台上,对SDCard(外部存储)进行文件操作是应用程序与用户交互的重要部分,尤其对于需要存储大量数据或媒体文件的应用来说。本教程将详细解释如何在Android中读写SDCard文件,非常适合初学者入门。 首先...

    从SDCard中读取文本内容

    step 3:检测sdcard中mana文件夹下是否有test.txt文件,如果有则读取文件内容,如果没有则从assets中把test.txt文件拷贝到sdcard的mana文件夹下,然后读取sdcard中的test.txt文件内容。 step 4:把文件内容显示到...

    android往手机内存和sdcard卡上存储数据

    这篇内容将详细讲解如何在手机内存以及SDCard(外部存储)上进行数据存储,并提供了一段经过封装的代码,方便开发者直接应用于实际项目。 首先,我们要了解Android提供的几种数据存储方式。它们包括: 1. **Shared...

    预置一些文件到系统sdcard目录.txt

    预置一些文件到系统sdcard目录

    Android读取sdcard上的图片并用Gallery显示

    在Android平台上,开发人员经常需要处理用户存储在外部存储设备(如SDCard)上的数据,尤其是图片文件。本文将深入探讨如何从SDCard读取图片并将其显示在Gallery组件中,以及实现点击Gallery中的图片后全屏显示的...

    Android应用源码SdCard读写文件实例

    在Android平台上,对SDCard(外部存储)进行文件读写是常见的操作,尤其对于需要存储用户数据或资源的应用来说更是必不可少。本实例将探讨如何在Android应用中实现SdCard的读写功能。 首先,我们需要了解Android对...

    android 模拟器中使用SDCard

    如何在 android 模拟器中使用SDCard

    Android数据存储之Sdcard

    Sdcard(Secure Digital Card)是Android设备常用的外部存储器,用于存放大量的非敏感数据,如媒体文件、应用缓存等。本篇文章将深入探讨Android如何在Sdcard上进行数据存储,并通过一个简单的示例来说明。 首先,...

    android模拟器中使用SDCard

    其中SD卡(Secure Digital Card,简称SDCard)在Android设备中主要用作存储扩展,它可以用来存放各种数据文件,比如图片、音乐和视频等。在Android模拟器中模拟SD卡的使用主要包含以下几个方面知识点: 首先,了解...

    Android解析如何获取SDCard 内存项目源代码

    在Android系统中,获取SDCard(外部存储)的内存信息是开发者经常遇到的任务,这有助于管理应用程序的存储需求,比如保存用户数据、缓存文件或者下载内容。标题提到的"Android解析如何获取SDCard内存项目源代码"显然...

Global site tag (gtag.js) - Google Analytics