`

java 复制到剪切板

 
阅读更多
package com.zzstxx.barcode.utils;

import java.awt.Image;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

/**
 * java 复制到剪切板
 * @author Administrator
 *
 */
public class CutBanUtils {

	/**
	 * 复制String到剪切板
	 * 
	 * @param writeMe
	 */
	protected static void setClipboardText(String writeMe) {
		Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();
		Transferable tText = new StringSelection(writeMe);
		sysc.setContents(tText, null);
	}

	/**
	 * 赋值图像到剪切板
	 * @param image
	 */
	public static void setClipboardImage(final Image image) {
		Transferable trans = new Transferable() {
			public DataFlavor[] getTransferDataFlavors() {
				return new DataFlavor[] { DataFlavor.imageFlavor };
			}
			public boolean isDataFlavorSupported(DataFlavor flavor) {
				return DataFlavor.imageFlavor.equals(flavor);
			}
			public Object getTransferData(DataFlavor flavor)
					throws UnsupportedFlavorException, IOException {
				if (isDataFlavorSupported(flavor)){
					return image;
				}
				throw new UnsupportedFlavorException(flavor);
			}

		};
		Toolkit.getDefaultToolkit().getSystemClipboard().setContents(trans,
				null);
	}
	
	/**
	 * 读取图片地址,把图片写入图片缓冲区
	 * @param imagePath
	 * @return
	 * @throws IOException
	 */
	public static BufferedImage readImage(String imagePath) throws IOException{
		File f = new File(imagePath);
		BufferedImage bi = ImageIO.read(f);
		return bi;
	}
	
	/**
	 * 方法一:把图片读入缓冲区后复制到剪切板
	 * @param imagePath
	 */
	public static void copyCut(String imagePath){
		BufferedImage image = null;
		try {
			image = CutBanUtils.readImage(imagePath);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	    CutBanUtils.setClipboardImage(image);
	}
	
	/**
	 * 方法二:一般图像没问题,如果是二维条码的话,建议使用方法一
	 * @param filePath
	 */
	public static void copyCutByToolkit(String filePath){
		Image image = Toolkit.getDefaultToolkit().getImage(filePath);
		CutBanUtils.setClipboardImage(image);
	}

	public static void main(String[] args) {
		//CutBanUtils.setClipboardText("周旭锋");
		CutBanUtils.copyCutByToolkit("e:/1.jpg");
	    //CutBanUtils.copyCut("e://1.jpg");
	}
}
 
分享到:
评论

相关推荐

    java 复制图片到剪切板

    在Java编程中,将图片复制到剪贴板是一项常见的任务,尤其在开发图形用户界面(GUI)应用时。本文将详细讲解如何实现这个功能,并结合给出的“qrcode_swing”这一标签,我们可以推断这是一个关于Swing组件库中处理...

    java操作剪贴板

    这个程序首先将字符串`"这是要复制到剪贴板的文本"`设置为剪贴板内容。如果你想读取剪贴板内容,可以取消注释相关代码。 5. **多线程与剪贴板** 剪贴板操作可能会涉及多个线程,因此需要确保在进行剪贴板操作时...

    java截取屏幕内容并将图片复制到剪切板

    java截取屏幕内容并将图片复制到剪切板

    Java操作剪贴板.txt

    在提供的部分代码片段中,我们可以看到如何在事件驱动的环境中操作剪贴板,例如在文本编辑器中处理复制、剪切和粘贴事件。 1. **复制操作**: ```java String temp = text.getSelectedText(); StringSelection ...

    Java剪贴板的使用

    它充当了一个临时存储区,当用户执行“复制”或“剪切”操作时,所选的数据会被放置到剪贴板上;随后,通过“粘贴”操作可以从剪贴板上获取这些数据。剪贴板支持多种类型的数据,如文本、图像、文件路径等。 #### ...

    Java 剪贴板演示程序-完成复制粘贴功能.rar

    Java剪贴板演示程序是基于Java编程语言设计的一个实用示例,主要目的是向开发者展示如何在Java中实现复制和粘贴的功能。这个程序允许用户监控剪贴板的实时状态,并通过点击界面按钮来执行常见的复制和粘贴操作。在...

    Java截屏保存系统剪切板

    Java截屏保存系统剪切板是一项实用的技术,它允许用户通过编程方式截取屏幕快照,并将该图像存储到系统剪贴板中,以便于后续的复制和粘贴操作。这项技术主要基于Java的标准版(Java SE)环境,利用了Java的AWT和...

    Java 利用剪贴板交换程序间数据

    这需要实现`java.awt.datatransfer.FlavorTarget`接口并注册到剪贴板上,以便在数据交换时进行适当的转换。 在实际应用中,`JClipboardDemo`这样的程序通常会包含一个完整的示例,展示如何创建一个简单的GUI,用户...

    复制到剪切板(浏览器兼容)

    在IT领域,尤其是在Web开发中,"复制到剪切板"功能是用户界面的一个常见需求。这个功能允许用户轻松地将文本、图片或其他数据从网页中复制到他们的系统剪贴板,以便稍后粘贴使用。标题"复制到剪切板(浏览器兼容)...

    Java利用剪贴板交换程序间数据

    摘要:Java源码,系统相关,剪贴板 Java利用剪贴板交换程序间数据,这个例实现了Java 程序与所在系统的剪贴板的数据交流,,当单击“Paste” ...当单击“Copy”按钮后,文本区中的选中文本将被传送到系统剪贴板上。

    ios剪切板文件与安卓剪切板java代码

    例如,调用`ClipboardUtil.copyToClipboard(this, "这是要复制的文本")`可以将文本复制到剪切板,而`ClipboardUtil.getTextFromClipboard(this)`则会返回当前剪切板中的文本。 需要注意的是,iOS和Android剪切板的...

    Android复制文本内容到系统剪贴板.rar

    在Android开发中,复制文本内容到系统剪贴板是一项常见的操作。这通常涉及到对Android的ClipboardManager类的使用,这是一个系统服务,允许应用程序存储和检索数据,如文本、图像等。接下来,我们将深入探讨如何在...

    剪切板监控及内容修改

    这些资源可以帮助开发者理解如何使用编程语言(如C++、Python或Java)来创建剪切板监控系统,并实现内容的修改功能。通过学习和分析这些代码,我们可以掌握剪切板API的使用方法,以及如何根据需求定制剪切板监控策略...

    浏览器内容复制到系统剪贴板的脚本

    浏览器内容复制到系统剪贴板的脚本,支持 Chrome 42+、Firefox 41+、IE 9+、Opera 29+;

    基于剪切板的多线程程序

    通过阅读和分析代码,可以学习到如何在多线程环境中使用剪切板API,以及如何实现线程间的同步和通信。对于经验丰富的开发者,这个程序也可以作为一个测试平台,用于验证和优化多线程设计和优化策略。 总之,"基于...

    鸿蒙开发笔记十:剪切板

    - 复制文本到剪切板: ```java ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); ClipData clip = ClipData.newPlainText("label", "Hello, HarmonyOS!"); ...

    剪贴板数据 获取 源程序 代码

    剪贴板操作通常包括复制、剪切、粘贴和清除,它们都是通过操作系统提供的API(应用程序接口)来实现的。 2. **Windows平台下的剪贴板操作** 在Windows系统中,我们可以使用Win32 API来访问剪贴板。例如,在C++中,...

    Java 操控键盘,鼠标,剪切板Demo

    例如,复制文本到剪切板: ```java Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); StringSelection selection = new StringSelection("Copied Text"); clipboard.setContents...

    Android剪贴板

    要将数据复制到剪贴板,可以创建一个`ClipData.Item`对象,然后使用`addClipData()`方法添加到剪贴板。例如,复制文本: ```java String textToCopy = "这是要复制的文本"; ClipData clip = ClipData.newPlainText...

    Unity调用Android,IOS剪切板

    本主题将深入探讨如何在Unity中调用Android和iOS的剪贴板功能,这对于游戏内分享文本信息、保存用户数据或者在不同应用间传递信息等场景非常有用。 首先,我们来看Android平台。Android系统提供了ClipboardManager...

Global site tag (gtag.js) - Google Analytics