如何在 Java 中清除系统剪贴板
?我试过了
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(null, null);
但它刚刚抛出了一个NPE
:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: contents
at sun.awt.datatransfer.SunClipboard.setContents(SunClipboard.java:98)
最佳答案
您可以创建一个明确不包含任何数据的特殊Transferable
,详见in this blog post :
clipboard.setContents(new Transferable() {
public DataFlavor[] getTransferDataFlavors() {
return new DataFlavor[0];
}
public boolean isDataFlavorSupported(DataFlavor flavor) {
return false;
}
public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException {
throw new UnsupportedFlavorException(flavor);
}
关于java - 如何清除 Java 中的系统剪贴板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18254808/