我在java上有点新手,所以我希望这是一个容易回答的问题。
我正在修改一个基于控制台/文本的游戏,也有一些GUI,游戏通常用扫描仪在其解析器中扫描用户输入。我在Beanshell 2中添加了一个JConsole,并使用tukushans方法重定向输出https://stackoverflow.com/a/1324525/1236210
现在我需要学习如何获得命令<输入>'由用户从此控制台输入到解析器中的扫描仪。解析器中与此相关的代码是:
import java.util.Scanner;
public Parser()
{
reader = new Scanner(System.in);
}
...
String inputLine; // will hold the full input line
String word1 = null;
String word2 = null;
System.out.print("> "); // print prompt
inputLine = reader.nextLine();
// Find up to two words on the line.
Scanner tokenizer = new Scanner(inputLine);
if(tokenizer.hasNext()) {
word1 = tokenizer.next(); // get first word
if(tokenizer.hasNext()) {
word2 = tokenizer.next(); // get second word
// note: we just ignore the rest of the input line.
}
}
return etc.
我的主要问题是,人们通常如何创建虚假的输入流并将其输入扫描仪(如读者)?
如果您可以回答这个问题和/或将我重定向到这方面的良好文档,我会非常高兴^ _ ^我希望凭借这些知识,我将找到一种方法将自己连接到此控制台我的扫描仪。如果你这样做也会回答如何为JConsole做这个,这简直太棒了,如果你这样做,那么你也应该在Java - How to read user input from BeanShell's JConsole?中发布它