2010-11-18 8 views
2

Ich möchte den Inhalt der Systemzwischenablage mit meinem Java-Code ersetzen, aber der kopierte Inhalt verschwindet, sobald das Java-Programm beendet. Wie kann ich die Daten persistent machen?Java - Zwischenablage kopiert Inhalt verschwinden nach dem Programm beendet

Vielen Dank.

 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(); 

bearbeiten: Ich arbeite auf Ubuntu 10.10, mit Java Version 1.6_20.

+0

Ich habe gerade festgestellt, dass dies nicht nur ein Java-spezifisches Problem ist. Zwischenablage Inhalt, den ich in Firefox kopieren auch verschwindet, wenn ich es schließe. – artsince

+0

In welchem ​​System arbeiten Sie? – dacwe

+0

hmm, vielleicht ist es eine plattformspezifische Situation. Welches Betriebssystem benutzen Sie? – artsince

Antwort

0

Es sieht so aus, als müsste die Datei, die den Inhalt der Zwischenablage in der Zwischenablage abgelegt hat, in Ubuntu 10.10 bedient werden können.

Installation glipper (sudo apt-get install glipper) funktioniert für mich. Es verwaltet Ihre Zwischenablage. (Es ist ein Applet, so scheint es, dass es zu Ihrem Panel hinzugefügt werden muss, um zu starten.)

+0

Ich wollte Clipboard Deamon versuchen (http://members.chello.nl/~h.lai/gnome-clipboard-daemon/). – artsince

+0

clipit funktionierte besser für mich auf Ubuntu 12.04 – Damien

Verwandte Themen