首页 >Java >java教程 >使用字符流的控制台输入

使用字符流的控制台输入

Linda Hamilton
Linda Hamilton原创
2024-11-11 18:50:03636浏览

Entrada do console com o uso de fluxos de caracteres

要以字符友好的方式(非常适合国际化)高效地读取 Java 中的控制台数据,建议使用字符流而不是字节流。由于System.in是字节流,因此必须将其封装在Reader中。此任务的推荐类是 BufferedReader,它使用 InputStreamReader 将字节转换为字符。

流程如下:

创建与 System.in 关联的 InputStreamReader:

InputStreamReader fluxoEntrada = new InputStreamReader(System.in);

然后将这个InputStreamReader传递给BufferedReader构造函数:

BufferedReader br = new BufferedReader(fluxoEntrada);

这样,br 就是连接到控制台的基于字符的输入流。

读取字符和字符串的方法

  • read():读取单个 Unicode 字符并在流末尾返回 -1。
  • readLine():以字符串形式读取完整行,直到用户按 ENTER 键,在流末尾返回 null。

使用示例:
以下代码从控制台读取字符直至字符 。请输入:

char c;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter characters, period to quit.");
do {
  c = (char) br.read();
  System.out.println(c);
} while(c != '.');

另一个示例允许您阅读文本行,直到插入单词“stop”:

String str;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter lines of text.");
System.out.println("Enter 'stop' to quit.");
do {
  str = br.readLine();
  System.out.println(str);
} while(!str.equals("stop"));

这些方法使键盘数据输入更加方便和结构化,特别是对于需要支持不同字符编码的程序。

以上是使用字符流的控制台输入的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn