• IO(五)----打印流


    打印流(PrintStream和PrintWriter)  打印流可以打印任意类型的数据,而且打印数据之前都会先把数据转换成字符串再进行打印。

    PrintStream:打印字节流。System.out对应的类型就是PrintStream。

    print 方法和write方法的却别在于,print提供自动刷新。

    常用方法:

    1、构造方法

    PrintStream(File file) 创建具有指定文件且不带自动行刷新的新打印流。

    PrintStream(String fileName) 创建具有指定文件名称且不带自动行刷新的新打印流。

    PrintStream(OutputStream out) 创建新的打印流。2、打印方法:

    void print(数据类型 变量) 打印变量的值。 如果打印自定义对象,打印出来的内容是toString方法中返回的字符串。

    PrintWriter:打印字符流。

    常用方法

    1、构造方法

    PrintWriter(File file) 使用指定文件创建不具有自动行刷新的新 PrintWriter。

    PrintWriter(OutputStream out) 根据现有的 OutputStream 创建不带自动行刷新的新 PrintWriter。

    2、打印方法:

    void print(数据类型 变量) 打印变量的值。 如果打印自定义对象,打印出来的内容是toString方法中返回的字符串。

    应用场景:

    1、把控制台的信息输出到指定的文件中。

    2、收集异常的日志信息到指定文件。

     1 public class Demo6 {
     2     
     3     public static void main(String[] args) throws IOException {
     4         //打印流可以打印任何类型的数据,而且打印数据之前都会先把数据转换成字符串再进行打印。
     5         File file = new  File("F:\a.txt");
     6         //创建一个打印流
     7         PrintStream printStream = new PrintStream(file);
     8         /*
     9         printStream.println(97);
    10         printStream.println(3.14);
    11         printStream.println('a');
    12         printStream.println(true);
    13         Animal a = new Animal("老鼠", "黑色");
    14         printStream.println(a);
    15         
    16         
    17         //默认标准的输出流就是向控制台输出的,
    18         System.setOut(printStream); //重新设置了标准的输出流对象
    19         System.out.println("哈哈,猜猜我在哪里!!");
    20         */
    21         
    22         //收集异常的日志信息。
    23         File logFile = new File("F:\2015年1月8日.log");
    24         PrintStream logPrintStream = new PrintStream( new FileOutputStream(logFile,true) );
    25         try{
    26             int c = 4/0;
    27             System.out.println("c="+c);
    28             int[] arr = null;
    29             System.out.println(arr.length);
    30         }catch(Exception e){
    31             e.printStackTrace(logPrintStream);
    32         }
    33     }
    34 }
    View Code
  • 相关阅读:
    HDU-2602-Bone Collector
    HDU-1171-Big Event in HDU
    javascript概要
    核桃的数量
    P3372 【模板】线段树 1
    P3373 【模板】线段树 2
    拿糖果
    第二点五个不高兴的小明
    树的直径
    1240. 完全二叉树的权值
  • 原文地址:https://www.cnblogs.com/nicker/p/6254102.html
Copyright © 2020-2023  润新知