Android数据储存之File
openFileOutStream 和 openFileInStream
FileInputStream fileInputStream = openFileInput(name); 打开应用下文件名称问name的输入流;
获取应用下某个文件的内容:
/**
* 读
* @return
*/
public String read(){
try {
//打开输入流
FileInputStream fileInputStream = openFileInput(name);
//创建byte数组
byte[] buffer = new byte[1034];
int i = 0;
//创建StringBuilder 对象
StringBuilder builder = new StringBuilder();
//循环读取fileInputStream中的字节
while ((i =fileInputStream.read(buffer)) > 0) {
builder.append(new String(buffer, 0, i));
}
//关闭输入流
fileInputStream.close();
//返回输入流中的字符串
return builder.toString();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
FileOutputStream fileOutputStream = openFileOutput(name, MODE_PRIVATE);打开本应用下名称为name的输出流
第一个参数为文件名称;
第二个参数为写入模式;
写入模式常用有四种:
MODE_ORIVATE 该文件只能被当前程序读写
MODE_APPEND 已追加的方式打开文件,程序可以向文件中追加内容
MODE_WORLD_READABLE 该文件的内容可以被其他程序读取
MODE_WORLD_WEITEABLE 该文件的内容可以被其他程序读写
示例:
/**
* 写
* @param str 文件中的字符串(内容)
*/
public void write(String str){
try {
//获取输出流对象,已追加的方式打开输出流
FileOutputStream fileOutputStream = openFileOutput(name, MODE_PRIVATE);
//将输出流封装成PrintStream对象
PrintStream printStream = new PrintStream(fileOutputStream);
//输出写入内容
printStream.print(str);
//关闭输出流
printStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
Context提供访问应用程序数据文件夹方法如下:
getDri(String name,int mode) 在应用程序数据文件加下创建或打开以name为名称的子目录
File getFileDri() 获取应用程序的数据文件夹的绝对路径
String[] fileList() 返回应用程序文件夹下全部文件
deleteFile(String name) 删除名称为name的数据文件
Android数据储存之File的更多相关文章
- Android数据存储:File
Android数据存储之File Files:它通过FileInputStream和FileOuputStream对文件进行操作.但是在Android中,文件是一个应用程序私有的,一个应用程序无法读写 ...
- android数据储存之存储方式
能够将数据储存在内置或可移动存储,数据库,网络.sharedpreference. android能够使用Content provider来使你的私有数据暴漏给其它应用程序. 一.sharedpref ...
- android数据存储之File
android中使用File进行存储主要使用到OpenFileOutput和OpenFileInput两个方法,下面直接用一个例子来说明一下. (1)布局文件main.xml文件 <?xml v ...
- android数据储存之应用安装位置
原文地址:http://developer.android.com/guide/topics/data/install-location.html#Compatiblity 从API8開始,你能够将你 ...
- Android数据储存之SQLiteDatabase 简单增删改查
SQLiteDatabase 使用 SQLiteDatabase提供如下方法来打开一个文件对应的数据库: openDatabase(String path, SQLiteDatabase.Cursor ...
- Android数据储存之SharedPreferences总结
写在前面:本文是我参考李刚老师的<疯狂Android讲义>以及API所写的读书笔记,在此表示感谢,本人小白,如有错误敬请指教. SharedPreferences的使用背景: 有时候,应用 ...
- 【Android数据存储】- File
个人学习整理.如有不足之处,请不吝不吝赐教. 转载请注明:@CSU-Max 读写本应用程序数据目录中的文件 此种方法读写的文件在/data/data/<应用程序包名>中 ...
- Android数据储存之SQLiteDatabase SQLiteOpenHelper类的简单使用
SQLiteOpenHelper 简介: SQLiteOpenHelper是一个借口!所以不能直接实例化!那我们想要得到SQLiteOpenHelper对象就需要实现该接口!创建该接口的实现类对象! ...
- Android数据储存之SharedPreferences
Android中SharedPreferences通常与Editor连用 接口SharedPreferences常用方法: boolean contains(String str):判断SharedP ...
随机推荐
- Copy Failed Error Access to fobidden
使用SVN的branch/tag命令来切包时,报出了一下错误提示 就这个错误,调了整整一天,如果你也遇到了类似问题,我真心希望下面解决问题的过程能帮助到你:D 解决过程: 1.网上查了很多帖子,发现跟 ...
- SQL 使用触发器常见错误
今天做代码审查时,看见以下一段触发器的创建脚本,我们一起来分析一下 create trigger [trigger_puClassRoomType] on [dbo].[puClassRoomType ...
- java Vamei快速教程13 String类
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 之前的Java基础系列中讨论了Java最核心的概念,特别是面向对象的基础.在Jav ...
- IOS Block动画
● + (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)dur ...
- IOS 监听键盘的通知(NSNotificationCenter)
通知方法: /** * 当键盘改变了frame(位置和尺寸)的时候调用 */ - (void)keyboardWillChangeFrame:(NSNotification *)note { // 设 ...
- VueX源码分析(5)
VueX源码分析(5) 最终也是最重要的store.js,该文件主要涉及的内容如下: Store类 genericSubscribe函数 resetStore函数 resetStoreVM函数 ins ...
- Vue中结合clipboard实现复制功能
首先现在Vue中引入clipboard npm install clipboard --save 在需要使用的组件中import 引入clipboard import Clipboard from ' ...
- 基础篇(2):c++顺序结构程序设计
一个程序最基本的结构莫过于3种:顺序,选择,循环.这篇讲讲顺序结构. c++语言的运算符与表达式数量之多,在高级语言中是少见的,也使得它的语言功能十分完善. c++的运算符有单目与双目之分(作用于一个 ...
- HTML5/CSS3 第一章基础
HTML5/CSS3基础 1. HTML 1.1 什么是HTML HTML是用来制作网页的标记语言 HTML是Hypertext Markup Language的英文缩写,即超文本标记语言 HTML语 ...
- 简述在php中 = 、==、 === 的区别(简述在php中 等于 、双等于、 三等于 的区别)
= 是赋值:就是说给一个变量赋值 == 是轻量级的比较运算,只看值不看类型 === 是重量级的比较运算,既看值,也看类型,要绝对相等才会为true