流规律应用2

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStreamWriter;

public class Test2 {

    public static void main(String[] args) throws IOException {
        
        /*
         * 需求:读取文本文件中的数据,将其打印到控制台上
         * 
         * 明确一:有源吗?有有目的吗?有
         * 源:InputStream Reader
         * 目的: OutputStream Writer
         * 
         * 明确二:是纯文本.java .txt .properties  (注:.word不是纯文本)
         * 源: Reader
         * 目的:Writer
         * 
         * 明确三:明确设备
         * 源设备:硬盘 File
         * 目的设备:显示器 System.out
         * 
         * FileReader fr = new FileReader("a.txt");
         * OutputStream(PrintStream) out = System.out;
         * 
         * fr读取数据到数组中。
         * 使用PrintStream直接调用println方法就可以打印,
         * 如果使用OutputStream可以调用write方法就可以将数据写入到显示器上
         * 
         *麻烦
         *
         *因为源都是字符数据,可以通过字符流的操作,将字符转成字节在给显示器。
         *需要额外功能吗?需要
         *字符-->字节
         *FileReader fr = new FileReader("a.txt");
         *OutputStreamWriter osw = new OutputStreamWriter(System.out);
         *
         *还需要额外功能吗?高效
         *BufferedReader bufr = new BufferedReader(new FileReader("a.txt"))
         *BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out))
         *
         *读取一行数据
         *写入一行数据
         *         
         */
        
        methodDemo2();
        
    }

    public static void methodDemo2() throws IOException {
        
        BufferedReader bufr = new BufferedReader(new FileReader("tempfile\a.txt"));
        BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out));
        
        String line = null;
        while((line=bufr.readLine())!=null){
            bufw.write(line);
            bufw.flush();
        }
    }

}
原文地址:https://www.cnblogs.com/qjlbky/p/5907296.html