打印流
4.1 概述
平时我们在控制台打印输出,是调用print
方法和println
方法完成的,这两个方法都来自于java.io.PrintStream
类,该类能够方便地打印各种数据类型的值,是一种便捷的输出方式。
4.2 PrintStream类
java.io.printStream:打印流
printStream 为其他输出流添加了功能,使他们能够方便的打印各种数据值表示形式
printStream特点
- 只负责数据的输出,不负责数据的读取
- 与其它输出流不同,printStream 永远不会抛出IOException
- 有特有的方法,print,println
- void print(任意类型的值)
- void println(任意类型的值并转换)
构造方法
public PrintStream(String fileName)
: 使用指定的文件名创建一个新的打印流。
printStream extends OutputStream
继承自父类的成员方法
- public void close():关闭此输出流并释放与此资源相关的任何系统资源
- void
void write**(byte[] b)
: 将b.length
个字节从指定的 byte 数组写入此输出流void
**write**(byte[] b, int off, int len)
:将指定 byte 数组中从偏移量off
开始的len
个字节写入此输出流。abstract void
write(int b)
: 将指定的字节写入此输出流
注意
- 如果使用继承自父类的write方法写数据,那么查看数据的时候会查询编码表97->a
- 如果使用自己特有的方法print/println方法写数据,写的数据原样输出97->97
构造举例,代码如下
public static void main(String[] args) throws FileNotFoundException {
PrintStream ps = new PrintStream("d:\Test\print.txt");
ps.write(99);
ps.println(96);
ps.close();
}
改变输出语句的目的地(打印流的流向)
输出语句,默认在控制台输出
使用System.setOut方法改变输出语句的目的地改为参数中传递的打印流的目的地
static void setOut(printStream out)
重新分配“标准”输出流
public static void main(String[] args) throws FileNotFoundException {
System.out.println("在控制台输出");
PrintStream ps = new PrintStream("d:\Test\test.txt");
System.setOut(ps);
System.out.println("在打印流目的地中输出");
ps.close();
}