我正在进行一个言语到文本项目,在那里我应该创建一个文本编辑器,当有人说话时键入。我所做的是当有人说话时,使用
将其附加到文件中File file = new File("C:\\Users\\User\\Desktop\\voice_type_test.txt");
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(file, true)));
writer.append("Text to be appended.");
writer.close();
问题陈述:文件被修改完美,但它不会更新打开的窗口及其内容。这很明显!我想要一种方式,以便它也可以更新打开的.txt文件。因为每次添加新行时读取文件都不是一个可行的选择!
示例
文件内容为:(在开放文本编辑器和硬盘文件中)
ABCDEFGHIJKLMNO
修改后的文件内容:
(在硬盘上)
ABCDEFGHIJKLMNO 要附加的文字。
(在屏幕编辑器上)
ABCDEFGHIJKLMNO
[编辑]
更新:屏幕编辑器/文本编辑器是指任何文本编辑器,无论是记事本,写字板,Word,Eclipse的代码区等。
答案 0 :(得分:0)
另一种解决方案。考虑使用java.awt.Robot。这将使用焦点将输入发送到当前窗口,因此应该可以处理任何事情。
Robot robot = new Robot();
Thread.sleep(1000);
String helloWorld = "Hello world";
for (char c : helloWorld.toCharArray()) {
if (Character.isUpperCase(c)) {
robot.keyPress(KeyEvent.VK_SHIFT);
}
robot.keyPress(Character.toUpperCase(c));
robot.keyRelease(Character.toUpperCase(c));
if (Character.isUpperCase(c)) {
robot.keyRelease(KeyEvent.VK_SHIFT);
}
}