2010-11-18 6 views
2

システムクリップボードのコンテンツをJavaコードの に置き換えますが、Javaプログラムが終了するとコピーされたコンテンツは消えます。データを永続化するにはどうすればよいですか?Java - プログラムの終了後にクリップボードのコピーされたコンテンツが消える

ありがとうございます。

 Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); 
     Transferable t = clipboard.getContents(null); 

     if (t.isDataFlavorSupported(DataFlavor.stringFlavor)) 
     { 
      String data = (String) t.getTransferData(DataFlavor.stringFlavor); 
      System.out.println(data); 
     } 

     StringSelection stringSelection = new StringSelection("Replaced Text"); 
     clipboard.setContents(stringSelection, null); 

     // just to keep program running... 
     Scanner scanner = new Scanner(System.in); 
     scanner.nextLine(); 

編集:私はUbuntu 10.10で、Javaバージョン1.6_20を使用しています。

+0

これは単なるJava固有の問題ではないことに気付きました。私がファイアウォールでコピーしたクリップボードの内容は、それを閉じると消えます。 – artsince

+0

あなたはどんなシステムですか? – dacwe

+0

ええと、それはプラットフォーム固有の状況かもしれません。どのオペレーティングシステムを使用していますか? – artsince

答えて

0

あなたの(あなたのプログラム)がクリップボードの内容をクリップボードに入れるのは、Ubuntu 10.10でそのプログラムを処理できなければならないようです。

インストールすると、glippersudo apt-get install glipper)が動作します。あなたのクリップボードを管理します。 (これはアプレットなので、パネルに追加する必要があります。

+0

私はClipboard deamon(http://members.chello.nl/~h.lai/gnome-clipboard-daemon/)を試しました。 – artsince

+0

clipitは私のためにUbuntu 12.04でうまくいった – Damien

関連する問題