【问题标题】:Java - output text from file as keyboard emulationJava - 从文件中输出文本作为键盘仿真
【发布时间】:2011-11-02 15:03:31
【问题描述】:

如果我有一个带有以下字符串的文件numbers.txt

*1222223* @4555556 !7888889! $19.99

我将如何阅读该行、删除符号并通过键盘仿真输出它,如下所示:

4555556 [TAB] 7888889 [TAB] [TAB] 1222223 [TAB] 19.99

[TAB] 是 TAB 键的模拟,而不是文字字符串。

当然,在输出过程中,我不知道数字是什么,甚至不知道这些数字最初的顺序。将 * @ !$ 符号视为这些数字位置的占位符,我想从 * @ ! $ 输入转到 @ ! * $ 输出。

如果这还不够具体,请告诉我。

编辑:我对 Java 一无所知。我做批处理/shell 脚本、HTML、CSS 和一些 PHP。我的问题涉及我的公司需要在一个简单程序中实施的操作,但我们没有配备 Java-Know-How。

【问题讨论】:

  • 选项卡可以使用\t 转义序列添加到字符串中。解析和排序数字的逻辑完全取决于您。
  • 不要在标题中编辑已关闭。如果您觉得该问题已过时,您可以自行删除。
  • 无法删除,因为有答案。并且没有正确的标志可以用来投票关闭它。

标签: java io inputstream outputstream keyboard-hook


【解决方案1】:

如果我理解你,你正在寻找的是这样的

http://gruimed.blogspot.com/2009/09/using-java-robot-to-type-text-strings.html

编辑:逐个字符读取文件,你可以使用这个:

http://www.java2s.com/Code/Java/File-Input-Output/Readfilecharacterbycharacter.htm

鉴于,在与机器人示例的链接第一个链接中,有一个方法

private void typeChar(char c)

将每个字符转换为键码并使用 java.awt.Robot 键入。在打字逻辑中使用条件排除任何不必要的字符,并使用机器人中的仿真插入选项卡,TAB 的键码存储在 java.awt.event.KeyEvent.VK_TAB 常量中。

【讨论】:

  • 在“假设”的主帖中添加额外信息。
  • 感谢您提供的信息。可能需要几天或几周的时间才能进行测试,但我非常擅长更新我的问题并为我的问题投票。
  • 看起来管理层决定不继续推进它,所以我不会对其进行测试。不过感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 2011-08-02
  • 2016-10-20
  • 2013-03-19
  • 1970-01-01
  • 2015-02-16
  • 1970-01-01
  • 1970-01-01
  • 2012-04-28
相关资源
最近更新 更多