今天我们学习了字符流和字节流,请根据自己的理解回答下面问题:
1.什么是输入流?什么是输出流?
输入流:把数据从其他设备读取到内存中的流。
输出流:把数据从内存中写出到其他设备上的流。
2.输入流读取有几种方式,输出流写出有几种方式?
字节输入流:public?abstract?int?read() : 从输入流读取数据的下一个字节。
public?int?read(byte[]?b) : 从输入流中读取一些字节数,并将它们存储到字节数组 b中 。
字符输入流:public?int?read() : 从输入流读取一个字符。
public?int?read(char[]?cbuf) : 从输入流中读取一些字符,并将它们存储到字符数组 cbuf中 。
字节输出流:public?void?write(byte[]?b) :将 b.length字节从指定的字节数组写入此输出流。
public?void?write(byte[]?b,?int?off,?int?len) :从指定的字节数组写入 len字节,从偏移量 o?开始输 出到此输出流。
public?abstract?void?write(int?b) :将指定的字节输出流。
字符输出流:void?write(int?c) 写入单个字符。
void?write(char[]?cbuf) 写入字符数组。
abstract??void?write(char[]?cbuf,?int?off,?int?len) 写入字符数组的某一部分,o?数组的开始索引,len 写的字符个数。
void?write(String?str) 写入字符串。
void?write(String?str,?int?off,?int?len) 写入字符串的某一部分,o?字符串的开始索引,len写的字符个 数。
3.字符流和字节流的区别?
字节流以字节为单位读写数据,使用字节流读取文本文件时,由于一个中文字符由多个字节存储,因此可能显示不完整的字符;
字符流以字符为单位读写数据,专门用于处理文本文件。 |