当前课程知识点:智能设备应用开发(基于Android平台) >  单元5 Android数据存储 >  任务二 应用程序数据文件夹里的文件读写 >  文件存储

返回《智能设备应用开发(基于Android平台)》慕课在线视频课程列表

文件存储资料文件与下载

文件存储

Android中提供了两个方法用来打开应用程序的数据文件夹IO流。

1FileInputStream openFileInput(String name):参数name表示某个文件名,该方法用于打开应用程序文件夹下name文件对应的输入流。

2FileOutputStream openFileOutPut(String name,int mode):该方法用于打开应用程序的文件夹下name文件对应的输出流。

同时,Android中提供了如下方法用来对应用程序的文件夹进行操作。

1getDir(String name,int mode):用于创建name对应的子目录。

2File getFilesDir():获取绝对路径。

3Stirng[] fileList():返回文件夹下所有文件。

4deleteFile(String name):删除指定文件。

关于文件存储,Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。

文件可用来存放大量数据,如文本、图片、音频等。

默认位置:/data/data/<>/files/***.***

public void write() 

        try { 

           FileOutputStream outStream=this.openFileOutput("sict.txt",Context.MODE_WORLD_READABLE); 

           outStream.write(text.getText().toString().getBytes()); 

           outStream.close(); 

           Toast.makeText(MyActivity.this,"Saved",Toast.LENGTH_LONG).show(); 

       } catch (FileNotFoundException e) { 

           return; 

       } 

       catch (IOException e){ 

           return ; 

       } 

 }  

openFileOutput()方法的第一参数用于指定文件名称,不能包含路径分隔符“/,如果文件不存在,Android 会自动创建它。

创建的文件保存在/data/data/<package name>/files目录,如: /data/data/cn.itcast.action/files/itcast.txt ,依次选择Eclipse菜单“WindowàShow ViewàOther”,在对话窗口中展开android文件夹,选择下面的File Explorer视图,然后在File Explorer视图中展开/data/data/<package name>/files目录就可以看到该文件。

openFileOutput()方法的第二参数用于指定操作模式,有四种模式。

1Context.MODE_PRIVATE = 0

2Context.MODE_APPEND = 32768

3Context.MODE_WORLD_READABLE = 1

4Context.MODE_WORLD_WRITEABLE = 2

其中,Context.MODE_PRIVATE为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中,可以使用Context.MODE_APPENDContext.MODE_APPEND模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。Context.MODE_WORLD_READABLEContext.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。MODE_WORLD_READABLE表示当前文件可以被其他应用读取,MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入。

如果希望文件被其他应用读和写,可以传入: openFileOutput("itcast.txt", Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE); android有一套自己的安全模型,当应用程序(.apk)在安装时系统就会分配给他一个userid,当该应用要去访问其他资源比如文件的时候,就需要userid匹配。默认情况下,任何应用创建的文件,sharedpreferences,数据库都应该是私有的(位于/data/data/<package name>/files),其他程序无法访问。

 

除非在创建时指定了Context.MODE_WORLD_READABLE或者Context.MODE_WORLD_WRITEABLE ,只有这样其他程序才能正确访问。

下一节:文件读取

返回《智能设备应用开发(基于Android平台)》慕课在线视频列表

智能设备应用开发(基于Android平台)课程列表:

单元1 开发第一个Android应用程序

-任务一 开发第一个Android应用程序

--任务1:开发第一个Android应用程序

--Android应用程序结构分析

--外部链接

-单元1 开发第一个Android应用程序--任务一 开发第一个Android应用程序

单元2 界面编程

-任务一 唐诗赏析软件

--任务1唐诗赏析软件设计

--TextView的使用方法

--html

--外部链接

-任务一 唐诗赏析软件--作业

-任务二 用户注册界面设计

--用户注册界面设计

--EditText的使用方法

--Button的使用方法

-单元2 界面编程--任务二 用户注册界面设计

-任务三 用户登录界面设计

--用户登录界面设计

--TableLayout的使用方法

-单元2 界面编程--任务三 用户登录界面设计

-任务四 游戏开始界面设计

--游戏开始界面设计

--RelativeLayout的使用方法

-单元2 界面编程--任务四 游戏开始界面设计

-任务五 图片浏览器

--2-5-1

--2-5-2

--基于监听的事件处理机制

-任务五 图片浏览器--作业

-任务六 个人信息收集界面设计

--个人信息收集界面

--RadioButton(单选按钮)和CheckBox(复选框)

--html

--Toast的使用方法

-任务六 个人信息收集界面设计--作业

-任务七 日期和时间选择器

--日期和时间选择器

--DatePicker的使用方法

--TimePicker的使用方法

-任务七 日期和时间选择器--作业

-任务八 猜拳游戏

--2-8-1

--2-8-2

--ImageButton的使用方法

--ImageView的使用方法

-任务八 猜拳游戏--作业

-任务九 制作选项菜单

--制作选项菜单

--选项菜单

-任务九 制作选项菜单--作业

-任务十 简单的文本编辑器

--简单的文本编辑器

--SubMenu的使用方法

-任务十 简单的文本编辑器--作业

-任务十一 制作滚动视图界面

--制作滚动视图界面

--ScrollView的使用方法

-任务十一 制作滚动视图界面--作业

单元3 深入理解Activity

-任务一 用户登录功能实现

--3-1-1

--3-1-2

--3-1-3

--Activity的创建

--html

--使用Bundle在Activity之间传送数据

--Video

-任务一 用户登录功能实现--作业

-任务二 Activity的一生

--3-2-1

--3-2-2

--3-2-3

--3-2-4

--Activity的生命周期

单元4 使用Intent进行通信

-任务一 使用Intent的Action属性实现页面之间的跳转

--4-1-1

--4-1-2

--Intent的Action、Category属性与intent-filter配置

-任务二 返回系统HOME页面

--4-2-1

--4-2-2

--通过标准Action和Category调用系统Activity

-任务三 浏览Google首页、打开一幅图片、启动给指定号码打电话、发短信页面

--4-3-1

--4-3-2

--html

单元5 Android数据存储

-任务一 使用SharePreferences存储和读取数据

--5-1-1

--5-1-2

--认识SharedPreferences

--SharedPreferences的相关方法和接口

--SharedPreferences实现数据存取

-任务一 使用SharePreferences存储和读取数据--作业

-任务二 应用程序数据文件夹里的文件读写

--5-2-1

--5-2-2

--文件存储

--文件读取

-任务二 应用程序数据文件夹里的文件读写--作业

-任务三 基于SQLite的用户信息存储器

--5-4-1

--5-4-2

--SQLiteDatabase类

--SQLiteOpenHelper类

-任务三 基于SQLite的用户信息存储器--作业

单元6 Service与BroadcastReceiver

-任务一 启动和关闭一个Service

--启动和关闭一个Service

--html

--html

--html

--Service的生命周期

-任务一 启动和关闭一个Service--作业

-任务二 来电监听器

--来电监听器

--html

-任务二 来电监听器--作业

单元7 网络应用技术

-任务一 基于TCP协议的点对点通信

--默认

--7-1-2

--7-1-3

--TCP协议的原理及Android中Socket编程

-任务一 基于TCP协议的点对点通信--作业

-任务二 使用HTTP访问网络资源

--默认

--7-2-2

--html

-任务二 使用HTTP访问网络资源--作业

-任务三 天气预报软件实现

--7-3-1

--7-3-2

--7-3-3

--7-3-4

--7-3-5

--html

课程信息

-课程介绍

--课程定位

--内容选取

--内容组织

--教学模式

--教学平台

-课程建设

--建设目标

--建设思路

--建设规划

--教材建设

--政策支持

-教学设计

--教学设计

--教学改革

-教学资源

--课程标准

--教案

--教学视频及配套PPT、案例等

--企业案例

-模拟题库

--技术答疑

--习题库

-实践教学

--实训项目指导书

--实训项目资源

--教学条件

-拓展资源

--案例库

--素材库

--培训项目包

-特色创新

--课程特色

文件存储笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。