Java I/O流的概述

Java.io包中最重要的就是5个类和一个接口。5个类指的是File、OutputStream、InputStream、Writer、Reader;一个接口指的是Serializable。掌握了这些就掌握了Java I/O的精髓了。

Java I/O主要包括如下3层次:

流式部分——最主要的部分。如:OutputStream、InputStream、Writer、Reader等

非流式部分——如:File类、RandomAccessFile类和FileDescriptor等类

其他——文件读取部分的与安全相关的类,如:SerializablePermission类,以及与本地操作系统相关的文件系统的类,如:FileSystem类和Win32FileSystem类和WinNTFileSystem类。

主要类如下:

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

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

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

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

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

RandomAccessFile(随机文件操作):它的功能丰富,可以从文件的任意位置进行存取(输入输出)操作

java.io包里有4个基本类:InputStream、OutputStream及Reader、Writer类,它们分别处理字节流和字符流。

其他各种各样的流都是由这4个派生出来的。

按来源/去向分类:

File(文件): FileInputStream, FileOutputStream, FileReader, FileWriter

byte[]:ByteArrayInputStream, ByteArrayOutputStream

Char[]: CharArrayReader, CharArrayWriter

String: StringBufferInputStream, StringReader, StringWriter

网络数据流:InputStream, OutputStream, Reader, Write

你可能感兴趣的:(Java I/O流的概述)