基本 I/O
外观
< Java 编程
主题: |
导航 用户界面 主题: ) |
本节介绍用于 **基本输入输出** 的 Java 平台类。但在开始之前,我们需要对编程中的输入输出含义有一个具体的理解。为了理解这个概念,可以将 Java 平台视为一个 *系统*。
Java 平台是一个隔离的实体,在你的操作系统中是一个空间,该系统外部的一切都是它的 *环境*。系统与其环境之间的交互是一种双向对话。系统要么接收来自其环境的消息,要么将自身的消息传递给环境。当系统接收到消息时,它被称为 *输入*,它的反面是 *输出*。总体而言,这种通信被称为 *输入/输出*,简称为 *I/O*。
以下章节旨在介绍 Java 中的基本输入输出,包括从键盘读取文本输入,将文本输出到显示器,以及从文件系统读取/写入文件。更多使用图形和 图形用户界面 (GUI) 程序的更高级的用户交互将在后面的 Swing 部分介绍。
I/O 有两个包:较旧的 java.io 包(不支持符号链接)和较新的 java.nio(“新 io”)包,它在 java.nio.file 中改进了异常处理。
写入屏幕非常容易,可以使用以下两种方法之一实现
|
| ||||
|
|
从 5.0 版本开始,Java 在 java.util
包中提供了一个名为 Scanner
的类,简化了键盘输入。
代码部分 9.3:使用 Scanner 输入
Scanner kbdIn = new Scanner(System.in); // Instantiating a new Scanner object
System.out.print("Enter your name: "); // Printing out the prompt
String name = kbdIn.nextLine(); // Reading a line of input (until the user hits enter) from the keyboard
// and putting it in a String variable called name
System.out.println("Welcome, " + name); // Printing out welcome, followed by the user's name
|
屏幕上显示 请输入您的姓名:John Doe 欢迎您,John Doe |
或者,可以编写一个方法来处理键盘输入。
代码部分 9.4:行读取器
public String readLine() {
// Creates a new BufferedReader object
BufferedReader x = new BufferedReader(new InputStreamReader(System.in));
// Reads a line of input and returns it directly
return x.readLine();
}
|
请注意,以上代码不应在大多数应用程序中使用,因为它每次运行方法时都会创建新的对象。更好的选择是创建一个单独的类文件来处理键盘输入。