Java BufferedReader和Scanner:限制输入字符数

Java BufferedReader和Scanner:限制输入字符数,java,Java,以下是两个简单的例子: 这是第一个- ... BufferedReader bufferedReader = new BufferedReader( new InputStreamReader(System.in) ); String string = new String (); try { string = bufferedReader.readLine(); } сatch (IOException ioe) { //TODO Auto-generated catch

以下是两个简单的例子:

这是第一个-

...
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时,我想停止用户输入。然后输出字符串


如何使用
BufferedReader
Scanner
类的
API
设置此限制?

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

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


当你说“停止用户输入”时,你希望发生什么?此时是否要禁用用户的键盘,或只是截断输入?如果你不这样做会发生什么?i、 e.你想防止什么问题?控制台是行缓冲的,在用户点击回车键之前,你不会得到任何东西。
Scanner scanner = new Scanner(System.in);
String string = scanner.findInLine(".{100}");