03课件-BTC-Android-01-第11章-Android-数据存储之文件存储.ppt

03课件-BTC-Android-01-第11章-Android-数据存储之文件存储.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

文件存储外部存储Android的外部存储设备指的是SD卡(SecureDigitalMemoryCard),是一种广泛使用于数码设备上的记忆卡不是所有的Android手机都有SD卡,但Android系统提供了对SD卡的便捷的访问方法*文件存储外部存储SD卡适用于保存大尺寸的文件或者是一些无需设置访问权限的文件,可以保存录制的大容量的视频文件和音频文件等SD卡使用的是FAT(FileAllocationTable)的文件系统,不支持访问模式和权限控制,但可以通过Linux文件系统的文件访问权限的控制保证文件的私密性Android模拟器支持SD卡,但模拟器中没有缺省的SD卡,开发人员须在模拟器中手工添加SD卡的映像文件*文件存储外部存储使用<AndroidSDK>/tools目录下的mksdcard工具创建SD卡映像文件,命令如下第1个参数-1表示后面的字符串是SD卡的标签,这个新建立的SD卡的标签是SDCARD第2个参数256M表示SD卡的容量是256兆最后一个参数表示SD卡映像文件的保存位置,上面的命令将映像保存在E:\android目录下sdcard_file文件中。在CMD中执行该命令后,则可在所指定的目录中找到生产的SD卡映像文件mksdcard-lSDCARDE:\android\sdcard_file*文件存储外部存储如果希望Android模拟器启动时能够自动加载指定的SD卡,还需要在模拟器的“运行设置”(RunConfigurations)中添加SD卡加载命令SD卡加载命令中只要指明映像文件位置即可SD卡加载命令*文件存储外部存储测试SD卡映像是否正确加载在模拟器启动后,使用FileExplorer向SD卡中随意上传一个文件,如果文件上传成功,则表明SD卡映像已经成功加载向SD卡中成功上传了一个测试文件test.txt,文件显示在/sdcard目录下*文件存储外部存储编程访问SD卡首先需要检测系统的/sdcard目录是否可用如果不可用,则说明设备中的SD卡已经被移除,在Android模拟器则表明SD卡映像没有被正确加载如果可用,则直接通过使用标准的Java.io.File类进行访问将数据保存在SD卡通过“生产随机数列”按钮生产10个随机小数通过“写入SD卡”按钮将生产的数据保存在SD卡的目录下SDcardFileDemo示例说明了如何将数据保存在SD卡*文件存储外部存储下图是SDcardFileDemo示例的用户界面*文件存储外部存储SDcardFileDemo示例运行后,在每次点击“写入SD卡”按钮后,都会在SD卡中生产一个新文件,文件名各不相同SD卡中生产的文件*文件存储外部存储SDcardFileDemo示例与InternalFileDemo示例的核心代码比较相似SDcardFileDemo示例与InternalFileDemo示例的不同之处第7行代码中添加了/sdcard目录存在性检查第8行代码使用“绝对目录+文件名”的形式表示新建立的文件第12行代码写入文件前对文件存在性和可写入性进行检查第5行代码为了保证在SD卡中多次写入时文件名不会重复,在文件名中使用了唯一且不重复的标识,这个标识通过调用System.currentTimeMillis()函数获得,表示从1970年00:00:00到当前所经过的毫秒数*文件存储外部存储下面是SDcardFileDemo示例的核心代码privatestaticStringrandomNumbersString="";OnClickListenerwriteButtonListener=newOnClickListener(){ @Override publicvoidonClick(Viewv){ StringfileName="SdcardFile-"+System.currentTimeMillis()+".txt"; Filedir=newFile("/sdcard/"); if(dir.exists()&&dir.canWrite()){ FilenewFile=newFile(dir.getAbsolutePath()+"/"+fileName); FileOutputStreamfos=null; try{ newFile.createNewFile()

文档评论(0)

iris + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档