Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我将如何从系统剪贴板粘贴到java中的任意窗口?_Java_System_Clipboard_Paste - Fatal编程技术网

我将如何从系统剪贴板粘贴到java中的任意窗口?

我将如何从系统剪贴板粘贴到java中的任意窗口?,java,system,clipboard,paste,Java,System,Clipboard,Paste,我正在制作一个聊天程序,它会将用户输入的文本粘贴一定次数,这实际上会让受害者屏幕上出现一堆消息。我已经在剪贴板上复制了文本,但是我不知道如何使用它,而不使用机器人类,我不想这样做,因为我不能弄清楚如何按下Mac的命令键,所以它不会是多平台的,因为如果有人按下中间的键,它可以做一些完全的事情。不一样。如果有人能帮我使用剪贴板类粘贴,那就太棒了。我在10亿个不同的网站上查过这个,但都找不出来。提前感谢!:) 以下说明如何将文本添加到剪贴板以及如何从剪贴板获取文本 import java.awt.*;

我正在制作一个聊天程序,它会将用户输入的文本粘贴一定次数,这实际上会让受害者屏幕上出现一堆消息。我已经在剪贴板上复制了文本,但是我不知道如何使用它,而不使用机器人类,我不想这样做,因为我不能弄清楚如何按下Mac的命令键,所以它不会是多平台的,因为如果有人按下中间的键,它可以做一些完全的事情。不一样。如果有人能帮我使用剪贴板类粘贴,那就太棒了。我在10亿个不同的网站上查过这个,但都找不出来。提前感谢!:)

以下说明如何将文本添加到剪贴板以及如何从剪贴板获取文本

import java.awt.*;
import java.awt.datatransfer.*;
import java.io.*;

class ClipboardTest
{
    public static void main(String[] args)
        throws UnsupportedFlavorException, IOException
    {
        Clipboard c = Toolkit.getDefaultToolkit().getSystemClipboard();
        StringSelection testData;

        //  Add some test data

        if (args.length > 0)
            testData = new StringSelection( args[0] );
        else
            testData = new StringSelection( "Test Data" );

        c.setContents(testData, testData);

        //  Get clipboard contents, as a String

        Transferable t = c.getContents( null );

        if ( t.isDataFlavorSupported(DataFlavor.stringFlavor) )
        {
            Object o = t.getTransferData( DataFlavor.stringFlavor );
            String data = (String)t.getTransferData( DataFlavor.stringFlavor );
            System.out.println( "Clipboard contents: " + data );
        }

        System.exit(0);
    }
}
获得文本后,可以通过执行以下操作将其添加到文本组件:

Document doc = textComponent.getDocument();
doc.insertString(....);

谢谢你的回复,但这告诉我如何以字符串形式获取剪贴板上的内容。我想知道我该如何粘贴它。就像在不使用robot类的情况下模拟CTRL+V。那么,您是在编写一个程序将消息多次粘贴到现有的聊天程序中,还是在编写一个可以多次发送消息的聊天程序?你的问题不是很清楚,但我怀疑是前者……对不起,我说得含糊不清。我正在制作一个程序,将消息多次粘贴到现有的聊天程序中。当然,这不必用于聊天。如果你需要写10亿次,比如如果你有20个条件,也可以使用它。但这是你的第一件事哇,谢谢,真是太好了。我在网上永远也找不到。