如何在Java中使用BufferedReader從檔案中讀取整數?


Java 的 BufferedReader 類用於從指定源(字元輸入流)讀取字元流。此類的建構函式接受 InputStream 物件作為引數。

此類提供了一個名為 **readLine()** 的方法,該方法讀取並返回源中的下一行,並以字串格式返回。

**BufferedReader** 類沒有提供任何直接讀取使用者整數的方法,您需要依賴 readLine() 方法來讀取整數。即,您需要首先以字串格式讀取整數。

Integer 類的 **parseInt()** 方法接受一個字串值,將其解析為帶符號的十進位制整數並返回。

使用此方法將讀取的字串值轉換為整數並使用。簡而言之,要使用 BufferedReader 類從使用者讀取整數形式的值 -

  • 例項化一個 **InputStreamReader** 類,並將您的 InputStream 物件作為引數傳遞。

  • 然後,建立一個 BufferedReader,並將上面獲得的 InputStreamReader 物件作為引數傳遞。

  • 現在,使用 **readLine()** 方法從當前讀取器中讀取整數形式的值作為字串。

  • 然後使用 Integer 類的 parseInt() 方法將讀取的字串解析為整數。

示例

以下 Java 程式演示瞭如何使用 **BufferedReader** 類從使用者讀取整數資料。

 線上演示

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Employee{
   String name;
   int id;
   int age;
   Employee(String name, int age, int id){
      this.name = name;
      this.age = age;
      this.id = id;
   }
   public void displayDetails(){
      System.out.println("Name: "+this.name);
      System.out.println("Age: "+this.age);
      System.out.println("Id: "+this.id);
   }
}
public class ReadData {
   public static void main(String args[]) throws IOException {
      BufferedReader reader =new BufferedReader(new InputStreamReader(System.in));
      System.out.println("Enter your name: ");
      String name = reader.readLine();
      System.out.println("Enter your age: ");
      int age = Integer.parseInt(reader.readLine());
      System.out.println("Enter your Id: ");
      int id = Integer.parseInt(reader.readLine());
      Employee std = new Employee(name, age, id);
      std.displayDetails();
   }
}

輸出

Enter your name:
Krishna
Enter your age:
25
Enter your Id:
1233
Name: Krishna
Age: 25
Id: 1233

更新於: 2019年9月10日

18K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.