Java Swing Tutorial - Java Clipboard .getAvailableDataFlavors ()








Syntax

Clipboard.getAvailableDataFlavors() has the following syntax.

public DataFlavor [] getAvailableDataFlavors()

Example

In the following code shows how to use Clipboard.getAvailableDataFlavors() method.

/*w  ww .j a  va2  s.c o  m*/
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.ClipboardOwner;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;

public class Main implements ClipboardOwner {
  Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();

  public Main() {
    // Implement Copy operation
    StringSelection contents = new StringSelection("data");
    clipboard.setContents(contents, this);
    
    DataFlavor[] fla = clipboard.getAvailableDataFlavors();
    for(DataFlavor f:fla){
      System.out.println(f);
    }
    
    
    // Implement Paste operation
    Transferable content = clipboard.getContents(this);
    String dstData;
    try {
      dstData = (String) content.getTransferData(DataFlavor.stringFlavor);
      System.out.println(dstData);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  public void lostOwnership(Clipboard clipboard, Transferable contents) {
    System.out.println("Clipboard contents replaced");
  }

  public static void main(String[] args) {
    Main test = new Main();
  }
}

The code above generates the following result.