节点流:离数据源|程序最近的流 | 处理流:装饰模式、提高性能、增强功能 |
1、字节流 1)输入流:InputStream FileInputStream ByteArrayInputStream 操作:read(字节数组) a)、中间容器 byte[] flush=new byte[长度] b)、接收长度 int len=0; c)、循环读取 while(-1!=(len=流.read(flush))){} d)、操作:输出、拷贝 2)、输出流:OutputStream FileOutputStream ByteArrayOutputStream 操作:write(字节数组,0,长度) 输出 2、字符流 1)输入流:Reader FileReader 操作:read(字符数组) a)、中间容器 char[] flush=new char[长度] b)、接收长度 int len=0; c)、循环读取 while(-1!=(len=流.read(flush))){} d)、操作:输出、拷贝 2)输出流:Writer FileWriter 操作:write(字符数组,0,长度) 输出 | 1、转换流:解码与编码字符集问题 1)、输入流:InputStreamReader-->解码 2)、输出流:OutputStreamWriter-->编码 2、缓冲流:提高性能 1)、输入流:BufferedInputStream BufferedReader 2)、处理流:BufferedOutputStream BufferedWriter 3、处理数据+类型 1)、基本+字符串 a)、输入流:DataInputStream readXxx b)、输出流:DataOutputStream writerXxx 2)、引用类型:Serializable transient a)、反序列化:ObjectInputStream readObject b)、序列化:ObjectOutputStream writeObject 4、打印流:printStream 5、System.in out err setIn setOut 以下流使用新增方法不能使用多态 1、ByteArrayOutputStream: toByteArray() 2、BufferedReader: readLine() 3、BufferedWriter: newLine() 4、DataInputStream DataOutputStream 5、ObjectInputStream ObjectOutputStream 6、PrintStream |