gpt4 book ai didi

java - 如何在 Java 中将文件剪切到剪贴板?

转载 作者:搜寻专家 更新时间:2023-10-31 08:04:04 25 4
gpt4 key购买 nike

我在 Java Swing 应用程序中使用这段代码将文件复制到剪贴板:

final List<File> files = new ArrayList<File>();
// ... code to fill list omitted ... //

Toolkit.getDefaultToolkit().getSystemClipboard().setContents(
new Transferable() {
@Override
public DataFlavor[] getTransferDataFlavors() {
return new DataFlavor[] { DataFlavor.javaFileListFlavor };
}

@Override
public boolean isDataFlavorSupported(DataFlavor flavor) {
return DataFlavor.javaFileListFlavor.equals(flavor);
}

@Override
public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException {
return files;
}
}, null
);

它有效,因为我可以转到 Windows 资源管理器并按 Ctrl+V 并显示文件(希望它在其他操作系统中有效,但未经过测试)。我也想实现 cut 但我不知道如何让系统知道这是什么操作,或者如何获得每个成功复制文件的反馈以便我可以删除手动从它的原始位置。

如果这不是不可能的,我应该如何处理这个问题有什么建议吗?我也希望能够在应用程序中剪切和粘贴(与操作系统资源管理器单独交换文件)。

最佳答案

还有另一篇帖子,人们讨论了缺乏切割文件的可能性:

Cutting files into the clipboard with SWT

如果你真的需要它,你可以采用丑陋的方式并检查是否有办法通过 JNI 调用来做到这一点,但是你必须对你想要支持的所有平台都这样做......

关于java - 如何在 Java 中将文件剪切到剪贴板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11028993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com