BufferedReader和Scanner:限制输入字符的数量

时间:2013-01-09 18:29:45

标签: java

以下是两个简单的例子:

这是第一个 -

...
BufferedReader bufferedReader = 
   new BufferedReader( new InputStreamReader(System.in) );

String string = new String ();
try {
   string = bufferedReader.readLine();
} сatch (IOException ioe) {
   //TODO Auto-generated catch block
   ioe.printStackTrace();
}
System.out.println(string);
...

而这 -

...
Scanner scanner = new Scanner(System.in);
String string = scanner.nextLine();
System.out.println(string);
...

例如,我只需要100个字符,我想停止用户输入,当字符数等于100.然后输出字符串。

如何使用课程APIBufferedReader的{​​{1}}设置此限制?

1 个答案:

答案 0 :(得分:3)

在按下ENTER之前,您将无法阻止用户输入数据,但您可以限制读取所消耗的字符数量:

char[] buffer = new char[100];
int charsRead = bufferedReader.read(buffer);

Scanner scanner = new Scanner(System.in);
String string = scanner.findInLine(".{100}");