节点流与处理流的使用
•什么是节点流
ü节点流:从一个特定的数据源(节点)读写数据(如:文件、内存)的类叫做节点流类
ü
ü这些节点类跟数据源或数据目的地做直接连接用的
ü在java.io包中,字节继承体系有三种节点类,而字符继承体系有四种节点类
类型 | 字节流 | 字符流 |
File | FileInputStream、FileOutputStream | FileReader、FileWriter |
Memory Array | ByteArrayInputStream ByteArrayOutputStream | CharArrayReader CharArrayWriter |
Memory String |
| StringReader、StringWriter |
Piped | PipedInputStream PipedOutputStream | PipedReader PipedWriter |
•节点流的方法 — Reader
üReader是输入字符数据用的类,它所提供的方法和InputStream类一样,差别在于InputStream类中用的是byte类型,而Reader类中用的是char类型。
Ø注:Reader类中没有available方法,取而代之的是”ready”方法,这个方法会去检查Reader对象是否已经准备好输入数据了,如果是返回true,反之返回false。
•节点流的方法 — Writer
üWriter类是输出字符数据的类,同样地,提供的方法和OutputStream类中的方法类似,将OutputStream类中用到的byte类型,换成char类型就可。
Ø注:Writer类另外提供了两个writer方法,所以Writer类有5个writer方法,多出来的两个只是把char数据换成String对象而已,方便输出字符的数据。
•文件的访问
ü了解了流操作的方法和File类的使用后,我们来看看如何访问一个文件中的数据
ü在java.io包中,可以利用以下四种节点类来进行文件的访问
ØFileInputStream
ØFileOutputStream
ØFileReader
ØFileWriter