使用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的权限

  1. if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
  2. File sdCardDir = Environment.getExternalStorageDirectory();//获取SDCard文件夹
  3. File saveFile = new File(sdCardDir, itcast.txt”);
  4. FileOutputStream outStream = new FileOutputStream(saveFile);
  5. outStream.write("赵雅智博客".getBytes());
  6. outStream.close();
  7. }

Environment.getExternalStorageState()方法:获取SDCard的状态

Environment.MEDIA_MOUNTED:假设手机装有SDCard。而且能够进行读写,返回的状态

Environment.getExternalStorageDirectory()方法:获取SDCard的文件夹。当然要获取SDCard的文件夹,你也能够这样写:

File sdCardDir = new File("/sdcard"); //获取SDCard文件夹

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

//上面两句代码能够合成一句: File saveFile = new File("/sdcard/itcast.txt");

FileOutputStream outStream = new FileOutputStream(saveFile);

outStream.write("赵雅智test".getBytes());

outStream.close();

将文件保存到SD卡,并从目录取文件

将文件或者目录从SD卡删除

案例1:调用相机并将照片存储到sd卡上

案例2:实例login。将usernamepassword保存sd卡

版权声明:本文博客原创文章,博客,未经同意,不得转载。

android(9)_数据存储和访问3_scard基本介绍的更多相关文章

  1. 【Android实验】 数据存储与访问sqlite

    目录 实验目的 实验要求 实验过程 功能分析: 实验结果: 实验的代码 实验总结 实验目的     分别使用sqlite3工具和Android代码的方式建立SQLite数据库.在完成建立数据库的工作后 ...

  2. Android下的数据存储与访问、权限

    弹出吐司 在onCreate中可以先获取控件对象 /data/data/程序的包名/          在这个目录下面进行文件的读写可能因为包名的改变而变得不可靠. this可以是Activity,也 ...

  3. 67.Android中的数据存储总结

    转载:http://mp.weixin.qq.com/s?__biz=MzIzMjE1Njg4Mw==&mid=2650117688&idx=1&sn=d6c73f9f04d0 ...

  4. Android Learning:数据存储方案归纳与总结

    前言 最近在学习<第一行android代码>和<疯狂android讲义>,我的感触是Android应用的本质其实就是数据的处理,包括数据的接收,存储,处理以及显示,我想针对这几 ...

  5. Android中的数据存储

    Android中的数据存储主要分为三种基本方法: 1.利用shared preferences存储一些轻量级的键值对数据. 2.传统文件系统. 3.利用SQLite的数据库管理系统. 对SharedP ...

  6. Android进阶(七)数据存储

    Android 数据存储 1访问资源文件 直接将文件保存在设备的内部存储. 默认情况下,保存到内部存储的文件为私有的,其他应用程序不能访问它们,当用户卸载应用程序时,所保存的文件也一并删除.  1.1 ...

  7. 安卓开发_数据存储技术_sqlite

    一.SQLite SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它的设计目标是嵌入式的,占用资源非常的低,只需要几百K的内存就够了.SQLite已经被多种软件和产品使用 ...

  8. 安卓开发_数据存储技术_SharedPreferences类

    SharedPreferences类 供开发人员保存和获取基本数据类型的键值对. 该类主要用于基本类型,例如:booleans,ints,longs,strings.在应用程序结束后,数据仍旧会保存. ...

  9. Android五种数据存储方式

    android 五种数据存储 :SharePreferences.SQLite.Contert Provider.File.网络存储 Android系统提供了四种存储数据方式.分别为:SharePre ...

随机推荐

  1. 假防病毒软件从电脑移植到了 Android 平台

    以前有位女研究生点击网络钓鱼的链接.随即出现实时扫毒画面的方式,接着呈现了扫毒结果,跑出十余笔病毒数据,记录了被感染的计算机的具体位置,并提示她必须更新防病毒软件,而她在付费两千元后收到"防 ...

  2. 动画(Animation) 它 (闪烁、左右摇摆、跷跷板等功效)

    一侧到另一侧的影响: (这里显示的是并不那么顺利) 一.续播  (不知道取什么名字好,就是先播放动画A, 接着播放动画B) 有两种方式. 第一种.分别动画两个动画,A和B, 然后先播放动画A,设置A ...

  3. Python编程预约参观北京行动纲要

    通过Python程序来模拟一个统一平台预约参观北京,包含验证码识别.登陆.据医院.时间.有关主管部门号等查询. 此程序仅供学习使用,请勿用于其他用途. 1.验证码图片 def getCodePic() ...

  4. netperf 而网络性能测量

    本文首先介绍网络性能測量的一些基本概念和方法.然后结合 netperf 工具的使用.详细的讨论怎样測试不同情况下的网络性能. 汤凯 (tangk73@hotmail.com), 2004 年 7 月 ...

  5. Android从无知到有知——NO.7

    的ip拨号器在监听外拨电话时用的是系统提供的广播事件.而有些时候我们须要自己设定广播事件来满足特定的须要. Ok,今天整一下自己定义广播事件,我们用一个状态监測模块向一个3G模块发送报警信息来实现这一 ...

  6. Java自定义比较器Comparator

    1.数字排序  奇数在前,偶数在后.奇数降序,偶数升序.输入:"0,1,2,3,4,5,6,7,8,9"        输出:"9,7,5,3,1,0,2,4,6,8&q ...

  7. Java Web整合开发(78) -- Struts 1

    在Struts1.3中已经取消了<data-sources>标签,也就是说只能在1.2版中配置,因为Apache不推荐在 struts-config.xml中配置数据源.所以建议不要在st ...

  8. 认识Underscore

    Underscore一个JavaScript实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象.它弥补了部分jQuery没有实现的功能,同时又是Backbone.j ...

  9. 《Qt on Android核心编程》夹

    china-pub在售前,售中环节退房,折扣低! 有朋友想看看<Qt on Android核心编程>的文件夹,So-- 文件夹     <Qt on Android核心编程>文 ...

  10. unity3d中让物体显示和隐藏

    unity3d中让物体显示和隐藏的方法 gameObject.renderer.enabled //是控制一个物体是否在屏幕上渲染或显示  而物体实际还是存在的 仅仅是想当于隐身 而物体本身的碰撞体还 ...