Как скопировать текст в буфер обмена в Java?
Мы рассмотрим некоторый исходный код метода Java, который позволяет копировать тексты в буфер обмена вашей операционной системы. Java предоставляет класс Clipboard, который находится в java.awt.data transfer. Буфер обмена обеспечивает важные функции графического пользовательского интерфейса (GUI), а именно КОПИРОВАТЬ (CTRL+C), ВСТАВИТЬ (CTRL+V) и ВЫРЕЗАТЬ (CTRL+X).
- To get the reference of Clipboard via Toolkit is: Toolkit toolkit=Toolkit.getDefaultToolkit();
- To Obtain the Clipboard reference: Clipboard clipboard=Toolkit.getDefaultToolkit().getSystemClipboard();
Подход
Предположим, мы хотим выполнить операцию копирования (аналогично нажатию Ctrl+C) строкового значения и вставить его в буфер обмена с помощью операции вставки (Ctrl+V). Чтобы было ясно, мы скопируем строку, не вводя команду Ctrl + C с клавиатуры, вместо этого мы скопируем строку через исходный код Java.
Шаги:
Следующие шаги будут выполнены для копирования текстов в буфер обмена.
- ОТКРЫТЬ ЛЮБУЮ JAVA IDE. Здесь мы будем использовать Spring Tool Suite (STS) Java IDE.
- ПЕРЕЙТИ К ФАЙЛУ После открытия Java IDE.
- ПЕРЕЙТИ К НОВОМУ, т.е. нажмите ALT+SHIFT+N
- НАЖМИТЕ на Java-проект
Дайте название проекта и заполните другие необходимые поля соответственно.
После заполнения всех необходимых полей нажмите «Готово» . Перейдите в папку src созданного вами проекта. Щелкните правой кнопкой мыши файл src и создайте пакет. Щелкните правой кнопкой мыши созданный выше пакет. Создайте класс Java . Код приведен ниже.
Java
| packageFirst_Java_Project; importjava.awt.Toolkit;importjava.awt.datatransfer.Clipboard;importjava.awt.datatransfer.StringSelection;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JOptionPane;importjavax.swing.JTextField; @SuppressWarnings("serial")publicclasscopytoClipboard    extendsJFrame implementsActionListener {       JTextField t1;    JButton b1;       copytoClipboard()    {        setLayout(null);        t1 = newJTextField();        t1.setBounds(20, 40, 400, 200);        add(t1);        b1 = newJButton("COPY CONTENT!");        b1.setBounds(70, 270, 150, 50);        b1.addActionListener(this);        add(b1);         setVisible(true);        setBounds(200, 90, 500, 500);    }       publicstaticvoidmain(String args[])    {        newcopytoClipboard();    }       @Override    publicvoidactionPerformed(ActionEvent e)    {        String str = t1.getText();        Clipboard clip = Toolkit.getDefaultToolkit()                             .getSystemClipboard();        StringSelection strse1 = newStringSelection(str);        clip.setContents(strse1, strse1);        JOptionPane.showMessageDialog(null,                                      "TEXTS ARE COPIED!");    }   } // This code is contributed by Rahul Chauhan. | 
После написания кода он покажет ошибки в написанном исходном коде.
NOTE: IMPORT NEEDED PACKAGES, CLASSES, AND LIBRARIES.
После импорта и устранения всех ошибок запустите проект Java . Наблюдайте за событиями, появится всплывающее окно. В появившемся окне напишите содержимое, которое хотите скопировать.
Нажмите на кнопку КОПИРОВАТЬ СОДЕРЖИМОЕ! Появится окно сообщения с сообщением, что ТЕКСТЫ КОПИИРОВАНЫ!
Теперь перейдите в Блокнот или любой другой инструмент редактирования, чтобы проверить, не копируются ли тексты. Используйте CTRL+V, чтобы вставить его. Наконец, мы сможем увидеть, что написанный текст внутри окна будет скопирован. Т.е. Готово с копированием текстов в буфер обмена с помощью Java.