一,IO流四大抽象类
InputStream OutputStream Reader Writer
继承自四大抽象类的子类基本读都用read()和他的重载方法,写用writer()和他的重载方法。
二,IO流分类
按数据单元分类,可以分为字节流和字符流。
字节流大多以Stream关键字结尾,字符流一般以Reader和Writer关键词结尾。
按处理对象不同分类,可以分为节点流和处理流。
节点流是直接操作数据源的流,比如数据库,txt文件等,而处理流是处理节点流的流。经过处理的流能力大大增强。
如图处理流可以一个接一个向台阶一样的,
三,io流的常见操作类。
文件字节流
两种常用的构造方法
InputStream is=new FileInputStream(String path);
//读取流
InputStream is=new FileInputStream(File file);
OutputStream os=new FileOutputStream(String path);
//写入流
OutputStream os=new FileOutputStream(File file);
int length=0;
//缓冲数组
Byte [] buffer=new Byte[1024];
//读取完后返回-1
while((length=is.Reader(buffer))!=-1){
os.writer(buffer);
}
文件字符流
FileReader fr=new FileReader();
FileWriter fw=new FileWriter();
操作与字节流操作大同小异,就不举例了。因为他们都继承自4大抽象类所以读写都是reader()和writer