如何将应用数据保存到本地文件?如何从本地文件加载数据到应用中?我实现的步骤是:

  应用(java数据)<--org.json-->JSONString<--Context.IO-->本地文件

  今天向读者讲解的是Context.IO部分。

File getDir(String name, int mode)

获取/data/data/<packagename>/目录的子目录(如不存在就先创建
它)

File getFilesDir() 获取/data/data/<packagename>/files目录
File getCacheDir()

获取/data/data/<packagename>/cache目录。应注意及时清理该目录,并节约使用空间

String[] fileList()

获取/data/data/<packagename>/files目录下的文件列表。可与其他方
法配合使用,例如openFileInput(String)

FileInputStream openFileInput(String name) 打开现有文件进行读取

FileOutputStream openFileOutput(String
name, int mode)

打开文件进行写入,如不存在就创建它

Context.IO实现本地文件的字符串输入输出

public class SerializerUtils {

    public static void save(Context c,String fileName,String data) throws IOException{
Writer writer=null;
try{
OutputStream out=c.openFileOutput(fileName, Context.MODE_PRIVATE);
writer=new OutputStreamWriter(out);
writer.write(data);
}finally{
if(writer!=null){
writer.close();
}
}
} public static String load(Context c,String fileName)throws IOException{
StringBuilder data=new StringBuilder();
BufferedReader reader=null;
try{
InputStream in=c.openFileInput(fileName);
reader=new BufferedReader(new InputStreamReader(in));
String line=null;
while((line=reader.readLine())!=null){
data.append(line);
}
}finally{
if(reader!=null){
reader.close();
}
}
return data.toString();
} }

Android-Context的IO功能的更多相关文章

  1. 【42】android Context深度剖析

    android程序和java程序的区别 Android程序不像Java程序一样,随便创建一个类,写个main()方法就能跑了,而是要有一个完整的Android工程环境,在这个环境下,我们有像Activ ...

  2. Android Context完全解析

    Context类型 我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析, ...

  3. Android Context 是什么?

    andorid 开发(42)  版权声明:本文为博主原创文章,未经博主允许不得转载. [转载请注明出处:http://blog.csdn.net/feiduclear_up CSDN 废墟的树] PS ...

  4. I.MX6 android 移除shutdown功能

    /************************************************************************ * I.MX6 android 移除shutdown ...

  5. Android Context讲解(转)

    博客出处 前言:本文是我读<Android内核剖析>第7章 后形成的读书笔记 ,在此向欲了解Android框架的书籍推荐此书. 大家好, 今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友 ...

  6. Android Camera2 预览功能实现

    1. 概述 最近在做一些关于人脸识别的项目,需要用到 Android 相机的预览功能.网上查阅相关资料后,发现 Android 5.0 及以后的版本中,原有的 Camera API 已经被 Camer ...

  7. Android Context完全解析,你所不知道的Context的各种细节

    Context相信所有的Android开发人员基本上每天都在接触,因为它太常见了.但是这并不代表Context没有什么东西好讲的,实际上Context有太多小的细节并不被大家所关注,那么今天我们就来学 ...

  8. Android Toast的多功能封装——Android开发之路1

    Android封装实现各种功能的Toast GitHub地址:https://github.com/SibreiaDante/ToastUtils 效果图: 方法封装如下: showSingleton ...

  9. Android Context完全解析与各种获取Context方法

    Context类型 我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析, ...

  10. Android Webview实现文件下载功能

        在做美图欣赏Android应用的时候,其中有涉及到Android应用下载的功能,这个应用本身其实也比较简单,就是通过WebView控制调用相应的WEB页面进行展示.刚开始以为和普通的文件下载实 ...

随机推荐

  1. Flex布局摆脱float带来的布局问题

    完整文章地址http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html?utm_source=tuicool 使用浮动(float)的一个比较疑惑 ...

  2. php文件格式数组

    一个文件格式对应的数组$mime_types = array('gif' => 'image/gif','jpg' => 'image/jpeg','jpeg' => 'image/ ...

  3. C C++ OC iOS面试重点问题(一)

    C C++ OC iOS面试重点问题(一) 1.字符串常量需要加\0 2.逻辑运算 位操作(经典:实现两个数的交换) 3.关键字 4.引用和指针的区别和联系 5.如何引用一个已经定义过的全局变量?  ...

  4. ImageButton自定义按钮的按下效果的高效实现方法(非一般)

    通常情况下,我们可以采用如下方式实现: <?xml version="1.0" encoding="UTF-8"?> <selector xm ...

  5. logstash 判断接口响应时间发送zabbix告警

    input { file { type => "zj_api_access" path => ["/data01/applog_backup/zjzc_log ...

  6. expect 批量监控主机

    [oracle@OAPRIMARY shell]$ cat expect.sh while read line do user=`echo $line | awk '{print $1}'` ip=` ...

  7. java开发经验分享(四)

    四. 关于测试 1. 在整个项目计划中,测试时间安排的合理性,对测试阶段的情况应作充分预计,不可为了赶发布点而忽略质量. 2. 务必清楚产品包.更新包.bug包的提交规范.具体请参照<开发规范手 ...

  8. Hadoop开发遇到的问题之reduce卡住

    遇到的问题描述:在hadoop上面执行程序,程序运行之后能够正常执行.一切似乎都是正常的,然而过了一段时间之后程序便开始阻塞直到程序超时退出(如下). 14/08/19 21:17:51 INFO m ...

  9. ZooKeeper编程指导

    简介 对于想要利用ZooKeeper的协调服务来创建一个分布式应用的开发人员来说,这篇文章提供了指导.包含了一些概念和实际性操作的信息. 这篇文章的前四个章节介绍了各种ZooKeeper的概念,这对理 ...

  10. 跨平台utf8转unicode研究实现(2)

    最近在用VC++开发一个小工具,平时用惯了.NET,用起VC++最郁闷的就是字符串处理.当然最最让人难于琢磨的就是字符集,编码之间的转换.通过这几天的研究,终于明白了Unicode和UTF-8之间编码 ...