1. 程式人生 > >按行順序的讀取一個可讀檔案的內容

按行順序的讀取一個可讀檔案的內容

1.效果圖

1.1 b_r_w.txt檔案內容:
在這裡插入圖片描述
1.2 控制檯列印效果:
在這裡插入圖片描述

2.Java程式碼

package com.example.demo.interviewQuestions;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

import com.example.demo.file.FileTest;

/**
 * @Description stream interview questions
 * @author 大都督
 * @date 2018年12月25日
 */
public class StreamInterview {

	public static void main(String[] args) throws IOException {
		File file = FileTest.createFile(FileTest.parent, "b_r_w.txt");
		//按行順序的讀取一個可讀檔案的內容
		readContentOfFile(file);
		
		//列印inputStream類中的方法
		//inputStreamMethods();
	}

	/** 
	* @Title: readContentOfFile 
	* @Description: 按行順序的讀取一個可讀檔案的內容
	* @param file 
	* @author 大都督
	* @date 2018年12月25日
	* @return void
	*/
	private static void readContentOfFile(File file) {
		//宣告String變數
		String s;
		//宣告FileInputStream變數
		FileInputStream fileInputStream;
		//宣告InputStreamReader變數
		InputStreamReader inputStreamReader;
		//宣告BufferedReader變數
		BufferedReader bufferedReader;
		try {
			//建立fileInputStream
			fileInputStream = new FileInputStream(file);
			//建立inputStreamReader
			inputStreamReader = new InputStreamReader(fileInputStream);
			//建立bufferedReader物件
			bufferedReader = new BufferedReader(inputStreamReader);
			//判斷檔案的下一行是否為空,不為空則打印出來
			while ((s = bufferedReader.readLine()) != null) {
				System.out.println("content:"+s);
			}
		} catch (FileNotFoundException e) {
			//檔案找不到異常
			System.out.println("File not found!");
			System.exit(-2);
		} catch (IOException e) {
			//檔案讀寫時的IO異常
			System.out.println("Error:"+e);
			System.exit(-3);
		}
	}

	/** 
	* @Title: inputStreamMethods 
	* @Description:  列印inputStream類中的方法
	* @author 大都督
	* @date 2018年12月25日
	* @return void
	 * @throws IOException 
	*/
	private static void inputStreamMethods() throws IOException {
		InputStream inputStream = new InputStream() {
			
			@Override
			public int read() throws IOException {
				return 0;
			}
		};
		byte[] b = "hello".getBytes();
		inputStream.read(b);
		System.out.println("inputStream.available():"+inputStream.available());
		System.out.println("inputStream.close():");
		inputStream.close();
	}
}