Die zugehörigen Klassen und Interfaces befinden sich im Paket java.awt.datatransfer. Die für die Kommunikation mit der Zwischenablage interessanten Bestandteile dieses APIs sind:
- Das Interface Transferable, das die Schnittstelle von Objekten festlegt, die mit der Zwischenablage ausgetauscht werden können.
- Die Definition der Datentypen, die ausgetauscht werden können. Diese werden in Java als DataFlavors bezeichnet und basieren auf der MIME-Spezifikation (Multi-purpose Internet Mail Extensions), die in RFC 1521 und 1522 beschrieben wird (allgemeine Hinweise zu den RFCs finden sich in Abschnitt 45.1.5).
- Die Klasse Clipboard, mit der die Zwischenablage implementiert wird. Neben der systemweiten Zwischenablage können auch benutzerdefinierte Zwischenablagen verwendet werden.
public void kopieren(String s)
{
try
{
Clipboard cb = Toolkit.getDefaultToolkit().getSystemClipboard();
StringSelection stringSelection = new StringSelection(s);
cb.setContents(stringSelection, stringSelection);
}
catch(Exception exc){}
}
public String getFromClipboard()
{
Transferable cont = clip.getContents(this);
if (cont == null)
{
System.out.println("Zwischenablage ist leer");
}
else
{
try
{
return (String) cont.getTransferData(DataFlavor.stringFlavor);
}
catch (Exception e)
{
System.out.println("Zwischenablage enthält keinen Text");
}
}
}