将文字或密钥发送到外部计划

时间:2015-07-07 15:22:12

标签: java string key external

是否可以通过Java将文本或键注入外部程序。

例如,我打开了标准Windows编辑器,可以从我的java程序发送" Hello World"它。然后编辑会满足" Hello World"然后再发送STRG + S来保存它等。

THX

2 个答案:

答案 0 :(得分:1)

您无法使用任何可以控制其他应用程序内部功能的语言创建程序。但是,如果您仍想这样做,请使用以下方法之一:

  1. 创建自己的文本编辑器Windows应用程序,它将充当外部Java应用程序生成的套接字服务器的客户端。听取服务器发送的消息并将其显示在工作空间中。定义一个与正常消息(例如saveItNow)不同的关键字,以执行保存任务。
  2. 制作一个简单的文本文件,假设" test.txt"。打开cmd并在同一目录中键入tail -f test.txt。现在通过简单的java文件处理,您可以将文本保存到test.txt,并立即显示在cmd中。

答案 1 :(得分:0)

也许机器人类可以成为我的解决方案......

String text = "Hello World from the Clipboard :)";
StringSelection stringSelection = new StringSelection(text);
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
clipboard.setContents(stringSelection, stringSelection);

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_CONTROL);

但我怎样才能首先关注外部程序呢? (除了将鼠标移动到窗口并单击它与robot.mouseMove(x,y))