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,长度) 输出
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)、输入流:InputStreamReader à解码
2)、输出流:OutputStreamWriter—>编码
1)、输入流:BufferedInputStream BufferedReader
2)、输出流:BufferedOutputStream BufferedWriter
1)、基本+字符串:必须存在才能读取 读取与写出顺序一致
a)、输入流:DataInputStream readXxx
b)、输出流:DataOutputStream writeXxx
2)、引用类型:Serializable transient
a)、反序列化:ObjectInputStream readObject
b)、序列化:ObjectOutputStream writeObject
原文:https://www.cnblogs.com/timetellu/p/11519910.html