JavaIO大纲
OutputStream
抽象类
- 源码摘抄:
public abstract class OutputStream
- 共性方法:
-void close() -void flush() -void write(byte[] b) -abstract void write(int b)
FileOutputStream
子类
- 创建对象:
-FileOutputStream(File file) -FileOutputStream(String name) -FileOutputStream(File file,boolean append) -FileOutputStream(String name,boolean append)
BufferedOutputStream
子类
- 创建对象:
BufferedOutputStream(OutputStream out)
测试:
//这个类用来测试字节流写出
//总结
//效率上讲:BufferedOutputStream >FileOutputStream,底层为了一个缓冲数组,默认大小是8K
public class Test3_OutputStream {
public static void main(String[] args) {
method();// 普通的字节流写出对象FileOutputStream
method2();// 高效的字节流写出对象BufferedOutputStream
}
private static void method2() {
try {
// 1,创建对象
// OutputStream out = new BufferedOutputStream(new FileOutputStream("D:\\iotest\\1.txt"));//覆盖数据
OutputStream out = new BufferedOutputStream(new FileOutputStream("D:\\iotest\\1.txt",true));//追加数据
// 2,写出数据
out.write(57);
out.write(58);
out.write(59);
// 3,释放资源
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
private static void method() {
try {
// 1,创建对象
// OutputStream out = new FileOutputStream(new File("D:\\iotest\\1.txt"));
// OutputStream out2 = new FileOutputStream("D:\\iotest\\1.txt");//默认是覆盖数据
// 需求:不想要覆盖数据而是想要追加数据
OutputStream out2 = new FileOutputStream("D:\\iotest\\1.txt", true);// true追加数据
// 2,写出数据
out2.write(97);
out2.write(98);
// 3,释放资源
out2.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}