BufferReader類的繼承結構及構造方法:
java.lang.Object
|-java.io.Reader
|-java.io.BufferReader
public BufferReader(Reader in)
範例1:鍵盤資料輸入标準
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Demo {
public static void main(String[] args) throws Exception {// 此處直接抛錯
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
System.out.println("請輸入資料:");
String str = buf.readLine();// 以回車作為換行
System.out.println("輸入的内容是:" + str);
}
}
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2Lc1zaE9UNFpGZyxmMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DOyEzMxcTN0EzMxUDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
============分割線============
範例2:判斷輸入内容
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Demo {
public static void main(String[] args) throws Exception {// 此處直接抛錯
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
boolean flag = true;
while (flag) {
System.out.println("請輸入内容:");
String str = buf.readLine();
if (str.matches("\\d{1,2}")) {
System.out.println("年齡是:" + Integer.parseInt(str));
flag = false;
} else {
System.out.println("輸入錯誤!重新輸入:");
}
}
}
}
============分割線============
範例3:進行檔案讀取
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
public class Demo {
public static void main(String[] args) throws Exception {// 此處直接抛錯
BufferedReader buf = new BufferedReader(
new FileReader("e:" + File.separator + "demo" + File.separator + "my.txt"));
String str = null;
while ((str = buf.readLine()) != null) {
System.out.println(str);
}
buf.close();
}
}