CGBTN2109-DAY13复习总结
Posted 程序媛 泡泡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CGBTN2109-DAY13复习总结相关的知识,希望对你有一定的参考价值。
DAY13复习
1.流的分类
1)按照方向分类:输入流 输出流
2)按照操作的单位分类:字节流 字符流
3)组合情况:字节输入流 字节输出流 字符输入流 字符输出流
2.字节输入流
1)抽象父级:InputStream–不能实例化
2)普通子级:
- FileInputStream–操作文件的字节输入流
构造方法参数:File file / String pathname - BufferedInputStream–高效字节输入流
构造方法参数:InputStream,但无法创建抽象父级对象,所以传的是FileInputStream
3.字节输出流
1)抽象父级:OutputStream–不能实例化
2)普通子级:
- FileOutputStream–操作文件的字节输出流
构造方法参数:File file / String pathname
注意:默认存在一个参数boolean append,默认值为false,也就是覆盖输出
如果将FileOutputStream构造函数的第2个参数appned设置为true,就会实现追加输出的效果 - BufferedOutputStream–高效字节输出流
构造方法参数:OutputStream,但无法创建抽象父级对象,所以传的是FileOutputStream
4.字符输入流
1)抽象父级:Reader
2)普通子级:
- FileReader–操作文件的字符输入流
构造方法参数:File file /String filename - BufferedReader–高效字符输入流
构造方法参数:Reader,但无法创建抽象父级对象,所以传的是FileReader
5.字符输出流
1)抽象父级:Writer
2)普通子级:
- FileWriter–操作文件的字符输出流
构造方法参数:File file /String filename
注意:默认存在一个参数boolean append,默认值为false,也就是覆盖输出
如果将FileWriter构造函数的第2个参数appned设置为true,就会实现追加输出的效果 - BufferedWriter–高效字符输出流
构造方法参数:Writer,但无法创建抽象父级对象,所以传的是FileWriter
练习多种流对象的创建方式
package cn.tedu.review;
import java.io.*;
/*本类用于复习流对象的创建*/
public class TestCreateStream {
public static void main(String[] args) {
f1();//用于复习字节流
f2();//用于复习字符流
}
//用于复习字符流对象的创建
private static void f2() {
try {
//用于复习字符输入流
//Reader in = new Reader();--抽象不可以被实例化
FileReader in = new FileReader(new File(""));
FileReader in2 = new FileReader("");
BufferedReader in3 = new BufferedReader(new FileReader(new File("")));
BufferedReader in4 = new BufferedReader(new FileReader(""));
//用于复习字符输出流
Writer out = null;
//out = new Writer();--抽象父级不可以被实例化
out = new FileWriter(new File(""));
out = new FileWriter("");
out = new FileWriter(new File(""),true);
out = new FileWriter("",true);
out = new BufferedWriter(new FileWriter(new File("")));//覆盖输出
out = new BufferedWriter(new FileWriter(""));//覆盖输出
out = new BufferedWriter(new FileWriter(new File(""),true));//追加输出
out = new BufferedWriter(new FileWriter("",true));//追加输出
} catch (Exception e) {
e.printStackTrace();
}
}
//用于复习字节流对象的创建
private static void f1() {
try {
//用于复习字节输入流
//InputStream in = new InputStream();--抽象父级不可以被实例化
FileInputStream in = new FileInputStream(new File(""));
FileInputStream in2 = new FileInputStream("");
BufferedInputStream in3 = new BufferedInputStream(
new FileInputStream(new File("")));
BufferedInputStream in4 = new BufferedInputStream(
new FileInputStream(""));
//用于复习字节输出流
OutputStream out = null;
//out = new OutputStream();//抽象父级不可以实例化
out = new FileOutputStream(new File(""));//覆盖输出
out = new FileOutputStream("");//覆盖输出
out = new FileOutputStream(new File(""), true);//追加输出
out = new FileOutputStream("", true);//追加输出
out = new BufferedOutputStream(new FileOutputStream(new File("")));
out = new BufferedOutputStream(new FileOutputStream(""));
out = new BufferedOutputStream(new FileOutputStream(new File(""), true));
out = new BufferedOutputStream(new FileOutputStream("", true));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
以上是关于CGBTN2109-DAY13复习总结的主要内容,如果未能解决你的问题,请参考以下文章