`

Java 访问(复制,粘贴)剪切板

阅读更多
以下共有4个函数分别是:
1.从剪切板获得文字。
2.将字符串复制到剪切板。
3.从剪切板获得图片。
4.复制图片到剪切板。
/**
	 * 从剪切板获得文字。
	 */
	public static String getSysClipboardText() {
		String ret = "";
		Clipboard sysClip = Toolkit.getDefaultToolkit().getSystemClipboard();
		// 获取剪切板中的内容
		Transferable clipTf = sysClip.getContents(null);

		if (clipTf != null) {
			// 检查内容是否是文本类型
			if (clipTf.isDataFlavorSupported(DataFlavor.stringFlavor)) {
				try {
					ret = (String) clipTf
							.getTransferData(DataFlavor.stringFlavor);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		}

		return ret;
	}

	/**
	 * 将字符串复制到剪切板。
	 */
	public static void setSysClipboardText(String writeMe) {
		Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();
		Transferable tText = new StringSelection(writeMe);
		clip.setContents(tText, null);
	}

	/**
	 * 从剪切板获得图片。
	 */
	public static Image getImageFromClipboard() throws Exception {
		Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();
		Transferable cc = sysc.getContents(null);
		if (cc == null)
			return null;
		else if (cc.isDataFlavorSupported(DataFlavor.imageFlavor))
			return (Image) cc.getTransferData(DataFlavor.imageFlavor);
		return null;
	}

	/**
	 * 复制图片到剪切板。
	 */
	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);
	}
分享到:
评论
1 楼 feiyangzaixin89 2012-07-25  
厉害 厉害 厉害

相关推荐

    java操作剪贴板

    在Java编程中,剪贴板操作是一个非常实用的功能,它允许程序之间共享数据,比如文本、图片等。本文将深入探讨如何使用Java API来实现剪贴板操作,并通过一个简单的示例程序`ClipBoardTest.java`来阐述核心概念。 ...

    鸿蒙开发笔记十:剪切板

    在鸿蒙系统中,剪切板是应用之间数据共享的重要工具,它允许用户复制文本、图片等信息,并在不同应用间粘贴。本篇将详细探讨鸿蒙开发中关于剪切板的相关知识点。 1. 剪切板概念 剪切板是操作系统提供的一种全局共享...

    基于剪切板的多线程程序

    在Windows系统中,我们可以使用Ctrl+C(复制)、Ctrl+X(剪切)和Ctrl+V(粘贴)快捷键来利用剪切板。剪切板的数据可以是文本、图片或者其他形式的信息,它使得数据的跨程序传输变得便捷。 其次,我们来看多线程。...

    Java弹出菜单,为JTextArea添加了右键弹出式菜单,实现了复制、粘贴、剪切

    今天,我们将学习如何使用 Java 弹出菜单来为 JTextArea 添加右键弹出式菜单,实现复制、粘贴、剪切功能。 一、Java 弹出菜单概述 Java 弹出菜单是一种 context-sensitive 菜单,即在用户点击右键时出现的菜单。它...

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

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

    简单的剪切板.zip

    例如,Python中的`tkinter.clipboard_clear()`、`tkinter.clipboard_append()`用于清空和添加剪切板内容,而在Java中可以使用`java.awt.Toolkit.getDefaultToolkit().getSystemClipboard()`来访问系统剪切板。...

    剪切板 - clipbrd.rar

    例如,Windows 10引入了剪切板历史记录,用户可以通过Win + V 快捷键访问,查看并粘贴之前复制过的多个项目。此外,跨设备同步也是新功能之一,用户可以在不同的Windows 10设备间同步剪切板内容(需开启“设置”中的...

    Clip1.rar_Clipboard_剪切板

    剪切板是计算机操作系统中的一个重要功能,它允许用户在不同程序之间复制和粘贴数据,如文本、图像或文件。在编程中,理解和利用剪切板API能够极大地提高应用程序的交互性和用户友好性。本资源"Clip1.rar_Clipboard_...

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

    Java的`java.awt.Toolkit`和`java.awt.datatransfer`包提供了对系统剪切板的访问。可以使用`Clipboard`接口来读取和设置剪切板内容。例如,复制文本到剪切板: ```java Clipboard clipboard = Toolkit....

    android 复制 粘贴 剪切功能应用

    在一些旧的Android版本或特定场景下,可能会使用其他方式来模拟复制粘贴和剪切操作。如上述代码中提到的两种方法: 1. **模拟按键事件**: 通过创建和分发一个`KeyEvent`来模拟Shift键被按下的情况,这可能在某些...

    Java剪贴板的使用

    通过掌握剪贴板API的使用,开发者可以轻松地在自己的程序中加入剪切、复制和粘贴功能,从而极大地提高应用的交互性和实用性。在实际开发中,剪贴板操作应考虑跨平台兼容性,确保在不同的操作系统上都能正常工作。...

    android实现文本复制到剪切板功能(ClipboardManager)

    旧版的`ClipboardManager`只支持字符串类型的复制粘贴,而新版的`ClipboardManager`从API 11开始支持更丰富的数据类型,如`ClipData`。 以下是实现文本复制功能的代码: ```java public static void copy(String ...

    Java操作剪贴板.txt

    Java 提供了强大的 API 来支持这一功能,使得开发者能够轻松地实现复制、剪切、粘贴等操作。 #### 二、核心概念 在深入探讨 Java 如何操作剪贴板之前,我们先来了解几个重要的概念: 1. **Clipboard**:表示系统的...

    一个允许剪切,复制和粘贴的简单便栈板程序.rar

    标题中的“一个允许剪切,复制和粘贴的简单便栈板程序”表明这是一个简易的剪贴板应用程序,主要用于实现数据的剪切、复制和粘贴功能。在计算机科学和软件工程领域,剪贴板是操作系统提供的一种临时存储区域,用户...

    sy-2.rar_basic_复制_粘贴 复制

    通过研究这些资源,你可以学习如何在基本的编程语言(如C++、C#或Java)中实现MDI应用程序的剪切、复制和粘贴功能,同时掌握如何优化代码以提高性能和用户体验。 总之,创建一个具有剪切、复制和粘贴功能的MDI应用...

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

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

    Android剪贴板

    剪贴数据存储了实际要复制或粘贴的信息,而剪贴板服务则负责管理这些数据,确保它们可以在不同应用间安全地传递。 **使用ClipboardManager** 在Android中,我们首先需要获取`ClipboardManager`实例,通常在需要使用...

    剪贴板:Ruby访问Windows,Linux,macOS,Java,Cygwin和WSL上的剪贴板:clipboard:︎

    剪贴板Ruby宝石 使您可以从任何地方...2.3,2.2,2.1,2.0用法Clipboard.copy将字符串复制到系统剪贴板Clipboard.paste系统剪贴板中的内容粘贴为字符串Clipboard.clear清空系统剪贴板建立Gemfile添加到您的Gemfile :

    java 开发的记事本

    5. **Clipboard**:Java提供了`java.awt.Toolkit.getDefaultToolkit().getSystemClipboard()`来访问系统的剪贴板,从而实现复制、粘贴和剪切功能。 6. **文本操作**:在Java中,可以使用`String`类和`StringBuilder...

    Java利用剪贴板实现交换程序间数据的方法

    在Java中,我们可以通过`java.awt.Toolkit`类来访问和操作系统剪贴板。以下是利用Java剪贴板实现程序间数据交换的详细步骤和知识点: 1. **获取系统剪贴板实例**: 要与系统剪贴板交互,首先需要获取它的实例。这...

Global site tag (gtag.js) - Google Analytics