第十周课程总结
一、io流的三种分类方式
1.按流的方向分为:输入流和输出流
2.按流的数据单位不同分为:字节流和字符流
3.按流的功能不同分为:节点流和处理流
int read() throws ioexception 读取一个字节以整数形式返回,如果返回-1已到输入流的末尾
void close() throws ioexception 关闭流释放内存资源
long skip(long n) throws ioexception 跳过n个字节不读
outputstream的基本方法
void write(int b) throws ioexception 向输出流写入一个字节数据
void flush() throws ioexception 将输出流中缓冲的数据全部写出到目的地
三、io流的四大抽象类:
字符流: reader writer
四、writer的基本方法
void write(int c) throws ioexception 向输出流写入一个字符数据
void write(string str) throws ioexception 将一个字符串中的字符写入到输出流
void write(string str,int offset,int length) 将一个字符串从offset开始的length个字符写入到输出流
void flush() throws ioexception 将输出流中缓冲的数据全部写出到目的地
reader的基本方法
int read() throws ioexception 读取一个字符以整数形式返回,如果返回-1已到输入流的末尾
五、File类
java.io.file类是专门对文件进行操作的类,只能对文件本身进行操作,不能对文件内容进行操作。
File类是“文件和目录路径名的抽象表示”,而不是指文件内容(IO)。
File类定义了一些与平台无关的操作方法,如:删除文件、创建文件、重命名等。
Java目录被看成一个特殊文件,List()方法可以返回目录中所有的子目录和文件。
在Unix下路径分隔符为(/),在windows下为(),在java中可以正确的处理不同系统的分隔符。
六、字符流与字节流转换
转换流的特点:其是字符流和字节流之间的桥梁,可对读取到的字节数据经过指定编码转换成字符,可对读取到的字符数据经过指定编码转换成字节。
2、输出字节流OutputStream
1、OutputStream 是所有的输出字节流的父类,它是一个抽象类。
2、ByteArrayOutputStream、FileOutputStream 是两种基本的介质流,它们分别向Byte 数组、和本地文件中写入数据。PipedOutputStream 是向与其它线程共用的管道中写入数据,
3、ObjectOutputStream 和所有FilterOutputStream 的子类都是装饰流。
在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类。
OutputStreamWriter:是Writer的子类,将输出的字符流变为字节流,即:将一个字符流的输出对象变为字节流输出对象。