반응형
자바에서 클립 보드에 복사
이 질문에 이미 답변이 있습니다.
- Java 4 답변을 사용하여 클립 보드에 텍스트 복사
사용자의 클립 보드를 Java 콘솔 응용 프로그램의 문자열로 설정하고 싶습니다. 어떤 아이디어?
를 사용하여 시스템 클립 보드Toolkit
를 가져옵니다 . 를 사용하여 를 만들고 .StringSelection
String
Clipboard
쉽게 한:
StringSelection selection = new StringSelection(theString);
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
clipboard.setContents(selection, selection);
이를 수행 하는 간단한 SSCCE 는 다음과 같습니다 .
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);
}
}
Linux에서 OpenJDK를 사용하는 경우 작동하지 않습니다. 작동하려면 Linux에서 Sun JDK를 사용해야합니다.
이 작업을 수행 하기 위해 JavaFX 방법을 검색하는이 게시물에 여전히 걸림돌이있는 사람은 다음과 같습니다.
ClipboardContent content = new ClipboardContent();
content.putString("Some text");
content.putHtml("<b>Bold</b> text");
Clipboard.getSystemClipboard().setContent(content);
자세한 내용 은 설명서를 참조하십시오 .
xclip이있는 Linux에서 :
Runtime run = Runtime.getRuntime();
Process p = null;
String str = "hello";
try {
p = run.exec(new String[]{"sh", "-c", "echo " + str + " | xclip -selection clipboard"});
}
catch (Exception e) {
System.out.println(e);
}
이것은 챔피언처럼 작동합니다.
String get = text.getText();
StringSelection selec = new StringSelection(get);
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
clipboard.setContents(selec, selec);
참고 URL : https://stackoverflow.com/questions/3591945/copying-to-the-clipboard-in-java
반응형
'IT TIP' 카테고리의 다른 글
.NET에서 문자열을 바이트 배열로 어떻게 변환합니까? (0) | 2020.10.28 |
---|---|
Subversion에서 파일 삭제를 취소하는 간단한 방법은 무엇입니까? (0) | 2020.10.28 |
Pandas / Pyplot의 산점도 : 범주별로 플로팅하는 방법 (0) | 2020.10.28 |
Chrome 개발자 도구는 더 이상 모든 자바 스크립트 파일을 표시하지 않습니다. (0) | 2020.10.28 |
swagger-ui는 배포 후 500을 반환합니다. (0) | 2020.10.28 |