Android的文件读取与存储
Java新建文件,然后就可以写入数据了,但是Android却不一样,因为Android是 基于Linux的,我们在读写文件的时候,还需加上文件的操作模式
Environment类是一个提供访问环境变量的类。
android中可以在设备本身的存储设备或外接的存储设备中创建用于保存数据的文件。在默认状态下,文件是不能在不同程序间共享的。
文件存储数据可以通过openFileOutput方法打开一个文件(如果这个)文件不存在就自动创建这个文件),通过load方法来获取文件中的
File是通过FileInputStream和FileOutputStream对文件进行操作,
Context提供了如下两个方法来打开本应用程序的数据文件将读取的文件IO流。
FileInputStream openFileInput(String name):打开应用程序的数据文件夹下的name文件对应输入流。
FileOutputStream openFileOutput(String name,int mode):打开应用程序的数据文件夹下的name文件对应输出流。
参数:mode 指定打开文件的模式,该模式支持如下值:
MODE_PRIVATE :该文件只能被当前程序读写。
MODE_APPEND:以追加方式打开该文件,应用程序可以向该文件中追加内容。
MODE_WORLD_READABLE:该文件的内容可以被其他应用程序读取。
MODE_WORLD_WRITEABLE:该文件的内容可由其他程序读、写。
getDir(String name,int mode):
在应用程序的数据文件夹下获取或创建name对应的子目录。
File getFilesDir():
获取该应用程序的数据文件夹的绝对路径
读、写SD卡上的文件
调用Environment的getExternalStorageDirectory()方法来获取,外部存储器
Context的使用
getApplication返回结果为Application,且不同的Activity和Service返回的Application均为同一个全局对象
如果想获取输入Edit数据,直接用全局变量xx.getText()来获取,
File类是文件和目录的创建、查找和删除等操作
指定的文件和文件夹,需要指定路径来表示
可以根据路径将我们系统中的文件或文件夹封装成File类型对象
从内存到硬盘里,那是output
从硬盘流向内存操作是输入
字节流
字节输入流 InputStream
字节输出流 OutputStream
字符流
字符输入流 Reader
字符输出流 Writer
一切皆为字节
java.io.OutputStream抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地
public void close():关闭此输出流并释放与此流相关联的任何系统资源
public void flush():刷新此输出流并强制任何缓冲的输出字节被写出
public void write(byte[] b):将b.length字节数组写入此输出流
pubic void write(byte[]b,int off,int len)从指定的字节数组写入len字节,从偏移量off开始输出到此输出流
public statract void write(int b):将指定的字节输出流
使用流的规律
1.创建流对象
2.执行对应的操作(读、写)
3.释放流对象
public FileOutputStream(File file)创建文件输出流以写入由指定的File对象表示的文件
public FileOutputStream(String name)创建文件输出流指定的名称写入文件
BitmapFactory创建Bitmap的几种方法说明
public
static
Bitmap decodeByteArray (
byte
[] data,
int
offset,
int
length, BitmapFactory.Options opts)
参数
data 压缩图像数据的字节数组
offset 图像数据偏移量,用于解码器开始从哪儿解析.
length 字节数,以偏移量开始,去解析
opts 可以为空,控制采样率和实付图像完全被解码的选项,或者仅仅返回大小
返回值
返回解码后的位图,或者如果图像数据不能被解码返回为空,或者 如果选项不是空,如果选项要求仅仅返回大小(opts.outWidth and opts.outHeight)。
Android的文件读取与存储的更多相关文章
- 【Android 应用开发】Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
. 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19913755 . 一. Android资源文件简介 1 ...
- Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...
- android 内部文件读取
Android 文件管理方法 Android使用的是基于Linux的文件系统,对于文件的訪问和管理是通过权限设置来限制的. 在Linux系统中,文件权限分别描写叙述了创建者.同组用户和其它用户对文件的 ...
- 二十、Android -- SDcard文件读取和保存
背景 一些东西可以 ...
- Android:Xml(读取与存储)
1.读取XML文件 参数xml是建含xml数据的输入流,List<Person> persons用于存储xml流中的数据. XmlPullParser类的几个方法:next(),nextT ...
- Android -- SDcard文件读取和保存
背景 一些东西可以 ...
- [置顶]
Android 关于SP读取与存储正确打开方式?
一.存储方式分类:SharedPreferences存储 二.SharedPreferences存储 1.特点 ①存储单一数据,例如数值,字符串,布尔 ②文件:/date/date/包名/shared ...
- sp,文件以及SDcard存储
XML: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" androi ...
- Pandas_数据读取与存储数据(全面但不精炼)
Pandas 读取和存储数据 目录 读取 csv数据 读取 txt数据 存储 csv 和 txt 文件 读取和存储 json数据 读取和存储 excel数据 一道练习题 参考 Numpy基础(全) P ...
随机推荐
- java之异常的捕获及处理
在java中程序的错误主要是语法错误和语义错误(也就是逻辑错误). java中异常处理语句的格式: try{ //有可能出现异常的语句 }catch(异常类 异常对象){ //编写异常的处理语句 }c ...
- bfs 邻接表(需要优化 可能会RE *【模板】)
//---基于邻接表的bfs #include <stdio.h> #include <string.h> #include <iostream> #include ...
- 第二篇:python基础之核心风格
阅读目录 一.语句和语法 二.变量定义与赋值 三.内存管理 内存管理: 引用计数: 简单例子 四.python对象 五.标识符 六.专用下划线标识符 七.编写模块基本风格 八.示范 一.语句和语法 # ...
- Linux_基于Docker快速搭建个人博客网站
时间:2017年04月28日星期五 说明:基于docker技术,使用jpress开源框架搭建个人博客网站.特别感谢jpress开源项目.系统版本:CentOS 7.2-64bit. 步骤一:准备Doc ...
- RequireJS 加载 js 执行顺序
初次接触RequireJS 对文档理解不很透彻,自己通过测试测到的执行顺序: 文档结构: |-amaze | -js | -amazeui.js | -jquery.min.js | -main.js ...
- EDM文件编写规范及注意事项
[设计EDM邮件] (1)乱码:你没法知道所有用户的系统环境,因此使用utf8来避免乱码是非常重要的 (2)绝对URL:若是相对URL,用户在打开页面是将看不到图片 (3)图片Alt属性:大多数邮件服 ...
- blog.codedream.ren
博客将转到 CodeDream ,新的链接是 http://blog.codedream.ren
- Python: PS 滤镜-- 极坐标变换到平面坐标
本文用 Python 实现 PS 中的一种滤镜 极坐标变换到平面坐标,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/de ...
- 微信小程序的ajax数据请求wx.request
微信小程序的ajax数据请求,很多同学找不到api在哪个位置,这里单独把小程序的ajax请求给列出来,微信小程序的请求就是wx.request这个api,wx.request(一些对象参数),微信小程 ...
- 在JS中将指定表单内的“具有name数据的表单元素的值”封装为Get形式的字符串
//封装post时候,表单中所有具有name数据的表单元素的值,并返回“n=1&p=a” function serialize(formid) { var arr = []; var ipts ...