gpt4 book ai didi

java - 让 Java 监听剪贴板并将新值推送到列表

转载 作者:行者123 更新时间:2023-12-05 07:45:29 25 4
gpt4 key购买 nike

我是 Java 的新手,只真正了解一点 javascript,只是为了公开我的代码背景。无论如何,我想让我的程序听剪贴板并将最新数据推送到列表中。作为 Java 的新手,我只是不确定如何执行此操作。我能够让我的代码从剪贴板中提取字符串并将其分配给一个变量。我也得到它来将变量添加到列表中,但是,每次我复制一些东西然后将它作为新字符串插入列表时我需要让它运行。 IE:我复制“However”这个词,然后复制“What”这个词,这两个词现在都会出现在列表中。

以下是我的代码-

package clipPaste;

import java.util.*;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;

public class Clippy {

public static void main(String[] args) throws Exception {

Toolkit toolkit = Toolkit.getDefaultToolkit();
Clipboard clipboard = toolkit.getSystemClipboard();
String result = (String) clipboard.getData(DataFlavor.stringFlavor);

List<String> list = new ArrayList<String>();
list.add(result);
System.out.println(list);

}

}

我找到了一些非常古老的“解决方案”,但是他们没有给我从剪贴板中拉出的字符串。

我正在努力插入自己学习比我当前的 Java 入门类(class)所教授的更多的知识,因此这个小项目试图在 Java 中制作类似 m8 剪贴板的程序。

我可能已经解决了这类问题,我只是将其设置为同时监听 control 和 C 的按键,并指示用户执行此操作。我知道这对用户不友好,但这是一个个人项目,随着我了解更多,我会进一步开展工作,而且它只会被大约 10 个人使用。

最佳答案

每次运行此代码时,它都独立于之前运行的时间运行。所以每次运行此代码时,它都会创建一个新的空列表 List<String> list = new ArrayList<String>(); .如果您希望列表在该程序的多次运行中持续存在,您需要将列表存储在某个地方并在下次程序运行时加载它,就像一个文件一样。另一种选择是用 while() 封装这个程序。循环以便它在后台永远运行,等待新的剪贴板输入,但我不知道这是否是您想要发生的事情。

关于java - 让 Java 监听剪贴板并将新值推送到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41601770/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com