我正在尝试通过使用Kryonet进行通信来创建基本的IRC。我遇到的问题是,在我的代码中,我无法安全地拥有一个允许用户键入和发送消息的主while循环,因为Scanner出现错误,并且似乎跳过了对nextLine()的调用。我想做的是让扫描仪在继续操作之前先等待用户输入。
Scanner input = new Scanner(System.in);
while (running){
System.out.print(":");
message.text = input.nextLine();
client.sendTCP(message);
}
input.close();
更准确地说,该程序将首先在行的开头添加“:”,然后在按回车键后获得用户键入的任何内容,然后将其发送给服务器。这是我得到的错误:
:Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Scanner.java:1585)
at com.andrewlalisofficial.ChatClient.main(ChatClient.java:51)
您正在关闭System.in
(通过Scanner
)-请勿这样做。如果关闭它,然后尝试使用new再次读取它Scanner
,它将抛出您发布的异常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句