如何在 Java 中使用 BufferedReader 从文件中读取整数?

java 8object oriented programmingprogramming更新于 2025/6/27 1:37:17

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

相关文章