流
流
1.1 流的概念
流:在 Java中所有数据都是使用流读写的。流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。
1.按照流向分:输入流;输出流
2.按照处理数据的单位分:字节流(8位的字节);字符流(16位的字节)
3.按流的来源分:文件流;网络流
1.2 输入输出流
1.3字节流和字符流
在java.io包中,流分为两种:字节流与字符流
字节流:数据流中最小的数据单元是字节 。处理字节型二进制数据,InputStream
、OutputStream
。
字符流:数据流中最小的数据单元是字符, Java中的字符是Unicode编码,一个字符占用两个字节。处理字符型文本数据,Reader
、Writer
。
1.4 字节流
FileInputStream和FileOutStream
1 public class FileInputStream extends InputStream{ }
- FileInputStream 从文件系统中的某个文件中获得输入字节。
- FileInputStream 用于读取诸如图像数据之类的原始字节流。
方法 | 解释 |
---|---|
FileInputStream(File file) | 通过打开与实际文件的连接创建一个FileInputStream,该文件由文件系统中的File对象file命名 |
FileInputStream(String name) | 通过打开与实际文件的连接来创建一个 FileInputStream ,该文件由文件系统中的路径名 name 命名 |
2 public class FileOutputStream extends OutputStream{ }
- 文件输出流是用于将数据写入到输出流 File 或一个 FileDescriptor 。文件是否可用或可能被创建取决于底层平台。
- 特别是某些平台允许一次只能打开一个文件来写入一个 FileOutputStream (或其他文件写入对象)。 在这种情况下,如果所涉及的文件已经打开,则此类中的构造函数将失败。
方法 | 解释 |
---|---|
FileOutputStream(File file) | 创建文件输出流以写入由指定的 File 对象表示的文件 |
FileOutputStream(String name ) | 创建文件输出流以指定的名称写入文件 |
字节缓冲流BufferedInputStream和BufferedOutputStream
1public class BufferedInputStream extends FilterInputStream{ }
- uffered