参考
自《Java 和 Android 开发实战详解》和《Java程序设计基础》罗刚主编
http://www.runoob.com/sqlite/sqlite-java.html

概括

  • Stream 流 —— 是Java 预定义的对不同情况进行输入/输出操作的类。
  • 是相对于程序来说的:数据进来,称为流入
【Android 学习笔记】 Java 的Stream模型—for Android

FileInputStream() 面向字节的文件输入流:

返回值类型 方法 解释
int read() 从输入流中读入一个字节
int read(byte[] b) 将最多b.length 个字节的数据读入一个byte数组中
int read(byte[] b , int off, int len) 最多len个字节的数据从off 处开始读入一个byte数组中
int available 返回下一次对此输入流调用的方法可以不受阻塞的从此输入流读取(或返回)的估计剩余字节数
long skip(long n) 从输入流中跳过并丢弃 n 个字节
void close() 关闭文件输入流并释放与此流相关的所有资源

FileOutputStream() 面向字节的文件输出流:

返回值类型 方法 解释
void write(int b)
void write(byte[] b)
void write(byte[] b , int off, int len)
void flush() 刷新此输出流并强制写出所有缓冲的输出字节到输出流对应的接收端
void close()

每次输入一个字节,效率十分低,为提高效率:

  • 字节缓冲输入流 : BufferedInputStream
  • 字节缓冲输出流: BufferedOutputStream
  • 格式化字节输入流:DataInputStream
  • 格式化字节输出流:DataOutputStream
// 缓冲包装
BufferedInputStream bin = new BufferedInputStream(fin);
b[i] = (byte)bin.read(); //使用缓冲输入流对象来进行输入
..../
BufferedOutputStream fout = new BufferedOutputStream(fout);
bout.write(b[i]);

FileReader 类面向字符的文件输入流:

返回值类型 方法 解释
int read() 从输入流中读入一个字符数据
int read(char[] c) 将最多c.length 个字节的数据读入一个 char 数组 c
int read(char[] c , int off, int len) 最多len个字节的数据从off 处开始读入一个char数组c
long skip(long n) 从输入流中跳过并丢弃 n 个字符
void reset() 重定位输入流
void mark( int n ) 标记输入流的当前位置
boolean ready() 判断输入流是否做好读的准备
void close() 关闭文件输入流并释放与此流相关的所有资源

FileWriter

返回值类型 方法 解释
void write(int c) 字符数据
void write(char[] cbuf) 字符数组
void write(char[] cbuf , int off, int len) 部分字符数组
void write(String str) 字符串数组
void write(String str , int off, int len) 部分
void append(char) 添加指定字符串
void append(CharSequence csq) 添加指定字符串序列
void append(CharSequence csq,int start , int end) 添加指定字符串序列的部分
String getEncoding() 返回此流使用的字符编码名称

Android 程序中

可以使用java.io 包的类来读取和写入,在context类中,用openFileInput() , openFileOutput() 读,写
例如:
【Android 学习笔记】 Java 的Stream模型—for Android
【Android 学习笔记】 Java 的Stream模型—for Android

相关文章:

  • 2021-12-05
  • 2021-11-23
  • 2021-07-07
  • 2021-11-19
  • 2021-12-18
  • 2021-11-18
  • 2021-12-12
猜你喜欢
  • 2022-01-21
  • 2022-01-22
  • 2021-11-29
  • 2021-11-29
  • 2021-07-16
相关资源
相似解决方案