Java I/O总结――OutputStream
2011-08-05 15:37
176 查看
24十一2009
前面我们学习了InputStream,OutputStream采用了类似的结构。本篇幅,我们只是介绍OutputStream中特殊的部分,与InputStream相同的部分不再重复说明。
上面这张图与前面的java.io.InputStream的类结构图有些类似,在java.io.InputStream/OutputStream的类结构中可以找到相互对应的类,这里额外需要说明的是PrintStream类。
这个类看上去有些陌生,很少使用它。实际上标准输出流:System.out的类型就是java.io.PrintStream。PrintStream作为FilterOutputStream的子类,其作用也是将某个输出流再次封装,并且提供了一些新的输出特性。说到System.out估计大家就明白多了,这里就不在说明了。其他标准输出:System.in的类型是InputStream,其默认是由JRE指向系统的标准输入流,在控制台下默认是键盘的输入,使用in.read()方法,将返回用户键盘输入的值;System.err的类型也是java.io.PrintStream。
下面举个具体的例子来说明,如何实现重定向标准输入/输出:
PrintStream output = new PrintStream(new FileOutputStream(“c:/out.log”));
System.setOut(output);
PrintStream errOutput = new PrintStream(new FileOutputStream(“c:/err.log”));
System.setErr(errOutput);
System.out.println(“Output redirect test”);
System.err.println(“Error redirect test”);
原来在控制台输出的文字都将被写入out.log或err.log文件中。
前面我们学习了InputStream,OutputStream采用了类似的结构。本篇幅,我们只是介绍OutputStream中特殊的部分,与InputStream相同的部分不再重复说明。
java.io. OutputStream 类总结
和InputStream类似,OutputStream(写入一系列字节的对象)是所有字节形式输出流的父类。类结构图如下图所示(单击查看大图片):上面这张图与前面的java.io.InputStream的类结构图有些类似,在java.io.InputStream/OutputStream的类结构中可以找到相互对应的类,这里额外需要说明的是PrintStream类。
这个类看上去有些陌生,很少使用它。实际上标准输出流:System.out的类型就是java.io.PrintStream。PrintStream作为FilterOutputStream的子类,其作用也是将某个输出流再次封装,并且提供了一些新的输出特性。说到System.out估计大家就明白多了,这里就不在说明了。其他标准输出:System.in的类型是InputStream,其默认是由JRE指向系统的标准输入流,在控制台下默认是键盘的输入,使用in.read()方法,将返回用户键盘输入的值;System.err的类型也是java.io.PrintStream。
下面举个具体的例子来说明,如何实现重定向标准输入/输出:
PrintStream output = new PrintStream(new FileOutputStream(“c:/out.log”));
System.setOut(output);
PrintStream errOutput = new PrintStream(new FileOutputStream(“c:/err.log”));
System.setErr(errOutput);
System.out.println(“Output redirect test”);
System.err.println(“Error redirect test”);
原来在控制台输出的文字都将被写入out.log或err.log文件中。
对其他的字节流,做个稍微的总结,如下图所示:
总结说明
java.io学习起来也相当的简单,我个人认为主要原因是JAVA是完全面向对象的,而C++由于包含了一些C语言的元素,在很多方面显得比较复杂,估计这也是大部分人认为C++比JAVA复杂的主要原因吧!相关文章推荐
- Java I/O总结——OutputStream
- 黑马程序员:Java基础总结----字节流&InputStream &OutputStream
- Java I/O流-总结(InputStream,OutputStream,Reader,Writer)
- Java IO流学习总结三:缓冲流-BufferedInputStream、BufferedOutputStream
- 黑马程序员_Java第18天知识总结_System类_Runtime类_Date_Calendar_Math_Random_InputStream_OutputStream_IO异常的处理
- Java I/O总结 -- OutPutStream
- Java I/O总结——OutputStream
- java输入输出流FileInputStream,FileOutputStream,BufferedInputStream,BufferedOutputStream知识点总结
- Java 知识点总结之Java IO API(一)
- java 数据类型细节总结
- 2018.3.13-第一次面试经历总结(Java)
- Java 知识点总结之Java 基本API(四)
- java程序如何优化技巧总结
- JAVA DAO(Data Access Object)的个人总结
- java学习总结(16.05.08)在windows下使用cmd命令行对java文件进行编译和执行
- Java中几个常用类总结
- atitit.软件开发GUI 布局管理优缺点总结java swing wpf web html c++ qt php asp.net winform
- 2016年总结-JAVA程序员
- java基础学习总结——final关键字
- java设计模式总结篇--行为型模式(2)