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的文件读取与存储的更多相关文章

  1. 【Android 应用开发】Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组

    . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19913755 . 一. Android资源文件简介 1 ...

  2. Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组

    一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...

  3. android 内部文件读取

    Android 文件管理方法 Android使用的是基于Linux的文件系统,对于文件的訪问和管理是通过权限设置来限制的. 在Linux系统中,文件权限分别描写叙述了创建者.同组用户和其它用户对文件的 ...

  4. 二十、Android -- SDcard文件读取和保存

    背景                                                                                            一些东西可以 ...

  5. Android:Xml(读取与存储)

    1.读取XML文件 参数xml是建含xml数据的输入流,List<Person> persons用于存储xml流中的数据. XmlPullParser类的几个方法:next(),nextT ...

  6. Android -- SDcard文件读取和保存

    背景                                                                                            一些东西可以 ...

  7. [置顶] Android 关于SP读取与存储正确打开方式?

    一.存储方式分类:SharedPreferences存储 二.SharedPreferences存储 1.特点 ①存储单一数据,例如数值,字符串,布尔 ②文件:/date/date/包名/shared ...

  8. sp,文件以及SDcard存储

    XML: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    androi ...

  9. Pandas_数据读取与存储数据(全面但不精炼)

    Pandas 读取和存储数据 目录 读取 csv数据 读取 txt数据 存储 csv 和 txt 文件 读取和存储 json数据 读取和存储 excel数据 一道练习题 参考 Numpy基础(全) P ...

随机推荐

  1. TTimer源码研究

    TTimerProc = procedure of object; IFMXTimerService = interface(IInterface) ['{856E938B-FF7B-4E13-85D ...

  2. SVN在myeclipse中新建地址的时出现被拒绝

    新建资源库地址: 控制台提示信息: svn: connection refused by the server svn: connection refused by the server Connec ...

  3. java 浮点数

    package precisenumber; //import java.util.*;public class PreciseNumber { public int fore; public int ...

  4. TCP/IP-ICMP-Ping-Traceroute

    TCP/IP-ICMP 作者:Danbo 2015-8-22 I C M P经常被认为是I P层的一个组成部分.它传递差错报文以及其他需要注意的信息.I C M P报文通常被I P层或更高层协议( T ...

  5. 如何在时间复杂度为O(n)空间复杂度为O(1)的情况下完成链表的逆置

    问题如题目,首先分析,链表的反转的空间复杂度如果为常数级,那么不可能完成从堆中申请数据来完成链表的反转工作,所以问题就转化为了如何将原链表修改/拆解为逆置的链表: 函数形式假定如下  void Inv ...

  6. JavaSE基础练习IO,字符串,循环

    import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.F ...

  7. Redis使用经验之谈

    应用场景 保存用户喜欢的商品信息. 类型: Hash, key: usr:${type_id}:${version_id}:${user_id}:${warehouse_id}, field: ${s ...

  8. IOS开发学习笔记(1)-----UILabel 详解

    1. [代码][C/C++]代码     //创建uilabelUILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(20, 40, ...

  9. codeforces B. Ilya and Queries 解题报告

    题目链接:http://codeforces.com/problemset/problem/313/B 题目意思:给出一个只有 "."  和  "#" 组成的序 ...

  10. Js常见的六种报错

    EvalError: raised when an error occurs executing code in eval() EvalError:当一个错误发生在()执行的代码RangeError: ...