在Java中,可以使用java.awt.Robot
类来模拟键盘输入。Robot
类提供了一些方法来模拟按键、释放键以及输入文本,可以用于自动化测试、自动填写表单等场景。
以下是一个示例代码,展示如何使用Robot
类来模拟键盘输入:
import java.awt.*;
import java.awt.event.KeyEvent;
public class KeyboardInputExample {
public static void main(String[] args) throws AWTException {
// 创建Robot对象
Robot robot = new Robot();
// 模拟按下和释放某个特定的键
robot.keyPress(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_A);
// 模拟按下和释放组合键,如Ctrl+C(复制)
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_C);
robot.keyRelease(KeyEvent.VK_C);
robot.keyRelease(KeyEvent.VK_CONTROL);
// 模拟输入文本
String text = "Hello World";
for (char c : text.toCharArray()) {
robot.keyPress(Character.toUpperCase(c));
robot.keyRelease(Character.toUpperCase(c));
}
}
}
上述代码中,通过创建Robot
对象来实现模拟键盘输入。Robot
类的keyPress()
和keyRelease()
方法用于模拟按下和释放键。可以使用KeyEvent.VK_*
常量来表示不同的按键,如KeyEvent.VK_A
表示按下或释放A键,KeyEvent.VK_CONTROL
表示按下或释放Ctrl键。
请注意,使用Robot
类模拟键盘输入时,它会直接向操作系统发送键盘事件,因此可能会影响到当前活动的窗口或应用程序。