00.java IO之综述

1.流主要分为:

1)根据处理的数据类型分为:字节流和字符流(字符流=字节流 + 编码)

2)根据数据流向不同可分为:输入流和输出流

3)按照数据的来源分类

   1、File(文件): FileInputStream, FileOutputStream, FileReader, FileWriter 
         2、byte[]:ByteArrayInputStream, ByteArrayOutputStream 
         3、Char[]: CharArrayReader,CharArrayWriter 
         4、String:StringBufferInputStream, StringReader, StringWriter 
         5、网络数据流:InputStream,OutputStream, Reader, Writer 

2.java io包中的所有类如下:

java.lang.Object

3.常用类有

 说明
File  文件类
InputStream  字节输入流
OutputStream  字节输出流
Reader  字符输入流
Writer  字符输出流
RandomAccessFile  随机存取文件


  1. File(文件特征与管理):用于文件或者目录的描述信息,例如生成新目录,修改文件名,删除文件,判断文件所在路径等。

     2. InputStream(二进制格式操作):抽象类,基于字节的输入操作,是所有输入流的父类。定义了所有输入流都具有的共同特征。

     3. OutputStream(二进制格式操作):抽象类。基于字节的输出操作。是所有输出流的父类。定义了所有输出流都具有的共同特征。

     4.Reader(文件格式操作):抽象类,基于字符的输入操作。

     5. Writer(文件格式操作):抽象类,基于字符的输出操作。

     6. RandomAccessFile(随机文件操作):一个独立的类,直接继承至Object.它的功能丰富,可以从文件的任意位置进行存取(输入输出)操作

4.字节流和字符流

1)字节流:流中的数据类型的最小单位是字节。

2)字符流:流中的数据类型的最小单位是字符。字符流实质就是字节流加编码。Java中的字符是Unicode编码,一个字符占用两个字节。

字符流的由来: Java中字符是采用Unicode标准,一个字符是16位,即一个字符使用两个字节来表示。为此,JAVA中引入了处理字符的流。因为数据编码的不同,而有了对字符进行高效操作的流对象。本质其实就是基于字节流读取时,去查了指定的码表。

5.输入流和输出流

根据数据的输入、输出方向的不同对而将流分为输入流和输出流。

1)输入流:

     程序从输入流读取数据源。数据源包括外界(键盘、文件、网络…),即是将数据源读入到程序的通信通道

2)输出流:

   程序向输出流写入数据。将程序中的数据输出到外界(显示器、打印机、文件、网络…)的通信通道。

怎么判断是输入流还是输出流?

输入流是程序从外设中读入到内存的过程。也就是说数据源是外设等存储设备,数据目的地是程序

输出流则相反。如下图:

 

posted on 2018-06-08 15:23  开心就好呀·  阅读(105)  评论(0编辑  收藏  举报

导航