java - 将字节数组直接复制到Java中的剪贴板

标签 java arrays byte clipboard

是否有任何解决方法可以直接将 byte[] 复制到剪贴板。

以下代码适用于字符串。

String str = "My - String";
StringSelection stringSelection = new StringSelection(str);
Clipboard clpbrd = Toolkit.getDefaultToolkit().getSystemClipboard();
clpbrd.setContents(stringSelection, null);

原因是我的 byte[] 很长,将它转换成字符串需要内存和时间,就好像我在复制它之前使用 new String(bArray) 等。

谢谢。

最佳答案

您可以使用 DataHandler 来做到这一点:

DataHandler dataHandler = new DataHandler(bytes, "application/octet-stream");
clpbrd.setContents(dataHandler, null);

DataHandler 甚至能够处理输入流,因此您可能根本不需要字节数组。

关于java - 将字节数组直接复制到Java中的剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31489383/

相关文章:

java - 编译时模拟

arrays - 如何从数组中删除特定对象?

c++ - 当数据在 C++ 中不一致时,将文本文件中的数据读入二维数组

C++ 在字节 vector 和 wstring 之间转换

c# - 将字节数组写入 C#.NET 中现有文件的中间

java使用 key 对加密和解密?

java - 使用 Hibernate 从 CSV 文件更新 Oracle DB 数据

java - 为什么 Java 不像检查 int 那样检查 byte 的类型兼容性?

java线程架构和应用程序设计

javascript - 将从 <span> 元素获取值并对唯一值进行排序的代码