我正在尝试创建一个线程
,它将创建一个文本文件
,并使用关键监听器写入在计算机上键入的每个字符但我不知道如何将创建的文件附加到用户将输入的下一个字符......可能我让每个人都感到困惑,但我只想存储用户将输入的每个字符(通过键盘)
就像每当我执行我的应用程序时,它都会创建一个文件并开始将 keychar
写入该文件。
最佳答案
这个问题有点不清楚。首先,如果您想存储在系统上输入的每个字符,那么这是一项艰巨的任务(稍后解释)。如果您确实想在顶部的 Java 窗口中注册击键,那么您可以通过不关闭文件并附加到同一个 writer
来实现这一点。
因此它将继续附加到它。但请确保所有按键处理都发生在 SwingUtilities.invokeLater()
内。
现在如果有任务的话,它适用于任何窗口。那么它很乏味,首先因为你需要操作系统的支持。您必须使用 JNI
或最好使用 JNA
。对于 Windows,this会有帮助的。我不清楚使用哪个合适的函数,但你会在这里找到所有想要的(尽管你需要先查看 win32 api)
private final User32 lib = = User32.INSTANCE;
//lib.appropriateMethod
与 Mac 类似,使用 Carbon框架(已弃用)或 Cocoa。
如果你用 Java 来做这件事,这就是痛苦
关于java - 创建一个线程来写入使用键盘输入的每个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15802782/