黑马程序员---javaIO流

------- android培训java培训、期待与您交流! ----------

 

 

 

 

一、IO流的四大基础类:

  字符流:Reader Writer

  字节流:InputStream(读数据) OutputStream(写数据)

 

 

 

 

 

 



 

 

 

 

 

 

 

 

 

 

 

二、IO流的三种分类方式

  1.按流的方向分为:输入流和输出流

  2.按流的数据单位不同分为:字节流和字符流

  3.按流的功能不同分为:节点流和处理流

 

字节输入流:

 

 

 

 

 

 

 

 

 

 


 

 

 

字节输出流:

 

 

 

 

 

 

 

 

 

 

 

字符输入流:

 

 

 

 

 

 

 

 

字符输出流:

 

 

 

 

 

 

 

 

 

 

缓冲流:

缓冲流要套接在相应的节点流之上,提高了读写的效率。

此处理流的构造方法都得传相对应的基类类型

BufferedReader:提供了readLine方法用于高校读取一行字符串

BufferedWriter:提供了newLine用于写入一个行分隔符也就是换行


转换流:

转换流主要作用将字节流转换成字符流。用处较大!

转换流在构造时可以指定其编码集合

InputStreamReader需要和InputStream套接

OutputStreamWriter需要和OutputStream套接

 

数据流:

数据流主要为实现可以存取Java原始数据类型如long,boolean。数据流是字节流

DataInputStream需要和InputStream套接

DataOutputStream需要和OutputStream套接

DataInputStream方法:readBoolean() readInt() read……()……

readUTF():网络传输常用方法 读一个Unicode字符串

DataOutputStream方法与DataInputStream基本对应为写的方法

 

打印流:

Print流只有输出流无输入流,PrintWriter和PrintStream分别针对字符字节

两个类提供了重载的Print和Println方法用于多种数据类型的输出

PrintWriter和PrintStream的输出操作不会抛出异常

PrintWriter和PrintStream有自动flush功能

----System.setOut(接收OutputStream类):用于设置系统默认输出流

 

对象流:

等同于c#序列化,用直接将Object写入或读出

transient关键字为不序列化此成员变量

需要序列化的类必须实现Serializable接口

主要方法:writeObject(Object); readObject();

读出为Object类型需要强转数据类型

 

 

------- android培训java培训、期待与您交流! ----------  详细请查看:http://edu.csdn.net/heima/

你可能感兴趣的:(java技术)