按键数字为什么不与小写字母一起使用?

时间:2019-02-11 15:04:13

标签: java keystroke

在击键方面我还是比较新的。当我将字符转换为整数然后尝试使用robot对其进行按键操作时,它不会打印出小写字母,而是将大写字母打印为小写字母。

我尝试通过将输入更改为全大写(使用toUpperCase)来运行代码,该方法可以正常工作,但是代码不会打印出大写字母。

import java.awt.Robot;
import java.util.Scanner;
import java.util.concurrent.TimeUnit;

public class typeWriter {
    public static void main(String[] args) throws InterruptedException {
        Scanner scan=new Scanner(System.in);
        try {
            String text6 = scan.nextLine();
            String text = text6.toUpperCase();
            char[] text1 = text.toCharArray();
            Robot robot = new Robot();
            int[] Charkey= new int[text1.length];
            TimeUnit.SECONDS.sleep(scan.nextInt());
            for(int i = 0; i<text1.length; i++) {
                Charkey[i]=(int) text1[i];
            }
            for(int y = 0; y<text1.length; y++) {
                robot.keyPress(Charkey[y]);
                robot.keyRelease(Charkey[y]);
            }
        } catch (AWTException e) {

        }

    }
}

当我输入“ Hello”时,我希望它键入“ Hello”,但改为键入“ h5 /”(不带toUpperCase修饰符)。如果我将字符串更改为all-caps,它将打印出正确的单词,但全部以小写字母显示。我该怎么办?

1 个答案:

答案 0 :(得分:1)

我有点找到答案了。对于那些有相同问题的人,这可能不是最佳方法,也不是最有效的方法,但是我用原始值组成了第二个数组,并且在for循环中添加了一个if语句,说明是否设置了原始值。该特定索引中的值介于65到90之间,将刺激换档键和实际键的按下。