android(9)_数据存储和访问3_scard基本介绍
使用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, “itcast.txt”);
FileOutputStream outStream = new FileOutputStream(saveFile);
outStream.write("赵雅智博客".getBytes());
outStream.close();
}
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();
案例2:实例login。将usernamepassword保存sd卡
版权声明:本文博客原创文章,博客,未经同意,不得转载。
android(9)_数据存储和访问3_scard基本介绍的更多相关文章
- 【Android实验】 数据存储与访问sqlite
目录 实验目的 实验要求 实验过程 功能分析: 实验结果: 实验的代码 实验总结 实验目的 分别使用sqlite3工具和Android代码的方式建立SQLite数据库.在完成建立数据库的工作后 ...
- Android下的数据存储与访问、权限
弹出吐司 在onCreate中可以先获取控件对象 /data/data/程序的包名/ 在这个目录下面进行文件的读写可能因为包名的改变而变得不可靠. this可以是Activity,也 ...
- 67.Android中的数据存储总结
转载:http://mp.weixin.qq.com/s?__biz=MzIzMjE1Njg4Mw==&mid=2650117688&idx=1&sn=d6c73f9f04d0 ...
- Android Learning:数据存储方案归纳与总结
前言 最近在学习<第一行android代码>和<疯狂android讲义>,我的感触是Android应用的本质其实就是数据的处理,包括数据的接收,存储,处理以及显示,我想针对这几 ...
- Android中的数据存储
Android中的数据存储主要分为三种基本方法: 1.利用shared preferences存储一些轻量级的键值对数据. 2.传统文件系统. 3.利用SQLite的数据库管理系统. 对SharedP ...
- Android进阶(七)数据存储
Android 数据存储 1访问资源文件 直接将文件保存在设备的内部存储. 默认情况下,保存到内部存储的文件为私有的,其他应用程序不能访问它们,当用户卸载应用程序时,所保存的文件也一并删除. 1.1 ...
- 安卓开发_数据存储技术_sqlite
一.SQLite SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它的设计目标是嵌入式的,占用资源非常的低,只需要几百K的内存就够了.SQLite已经被多种软件和产品使用 ...
- 安卓开发_数据存储技术_SharedPreferences类
SharedPreferences类 供开发人员保存和获取基本数据类型的键值对. 该类主要用于基本类型,例如:booleans,ints,longs,strings.在应用程序结束后,数据仍旧会保存. ...
- Android五种数据存储方式
android 五种数据存储 :SharePreferences.SQLite.Contert Provider.File.网络存储 Android系统提供了四种存储数据方式.分别为:SharePre ...
随机推荐
- Mysql学习笔记(一)数据类型
原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型 Mysql数据类型 含义(有符号) tinyint(m ...
- C#遍历FTP文件夹/下载
原文链接:http://blog.csdn.net/ou8811/article/details/5295780 整个程序大致可以分为2个部分,第一部分是实现单个文件下载的方法 [c-sharp] v ...
- freemarker 里 ?? 和 ? 都是什么意思
??是推断对象是否为空,比如:<#if object??>object对象不为空(即object存在)</#if> ?后面要加keyword,比如:<#if object ...
- 设计模式C++达到 3.抽象工厂
简单工厂模式和工厂模式 要求 同类型的产品子类有共同的方法.这限制了产品子类的扩展.抽象工厂能client它提供了一个接口,它是client而不必指定产品的详细信息.创建多个产品系列产品对象.在归为一 ...
- 谈论高并发(二十二)解决java.util.concurrent各种组件(四) 深入了解AQS(二)
上一页介绍AQS其基本设计思路以及两个内部类Node和ConditionObject实现 聊聊高并发(二十一)解析java.util.concurrent各个组件(三) 深入理解AQS(一) 这篇说一 ...
- iOSSingleton设计模式详细的说明教程
iOS有很多的设计模式,当然,不管是什么语言有很多的设计模式.辛格尔顿是一种之一,辛格尔顿,它从字面上是一个单独的实例,首先,它是只有一个单一的,其次,它是一个实例.我们知道,在iOS用于开发Obje ...
- UDP议定书图像高速传输无损失程序
下面的程序实现UDP没有图像数据的高速传输协议损耗,测试数据egtest01图片库,实现PC和图像的传输嵌入式结束.变速箱+读写速度可以达到10+M/S.考 server端程序 #include &l ...
- nyoj 47 江 河问题 【贪婪】
经典的贪婪. 两种方案:一个:让我们来最快,第二快,在过去的第一,最快的回.然后最慢,最慢第二,在过去.次最快的回来a[0]+a[1]+a[1]+a[n-1] 二:最快的和最慢的过去,最快的回来,最快 ...
- 经纬Zhang英拉垫背的企业家VC没有到这种地步这么卑鄙
经纬的合伙人张颖前不久发了一篇名为<泡沫就在那里------致经纬系CEO的一封信>,这篇文章所提到的泡沫论在业界引发了强烈的反响,随后有评论觉得,这明明是VC(风险投资)们自己的危机,为 ...
- log4net使用特定的解释
说明:该程序演示如何使用log4net记录日志信息. log4net它是-known开源组件的日志记录功能.使用log4net可以很容易地将信息记录到文件.控制台.Windows事件日志和数据库(含有 ...