Java中剪切板的操作
来源:互联网 发布:今天双11网络怎么了 编辑:程序博客网 时间:2024/06/08 02:04
Java中有时需要操作系统剪切板的问题,下面演示如何用Java操作系统剪切板,就是定义一个类其中引入需要的包,设计需要的方法,为了不用建立实例即可直接使用,可把方法设置为静态方法 static ,具体步骤如下:
1,引入对应的包
import java.io.IOException;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;
2,设置系统剪切板内容[内容为文本]
public static void setSystemClipboard(String refContent){ //设置为static是为了直接使用,不用new一个该类的实例即可直接使用,即定义的: 类名.方法名String vc = refContent.trim();StringSelection ss = new StringSelection(vc);Clipboard sysClb=null;sysClb = Toolkit.getDefaultToolkit().getSystemClipboard();sysClb.setContents(ss,null); //Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null); //跟上面三行代码效果相同}
public static String getSystemClipboard(){//获取系统剪切板的文本内容[如果系统剪切板复制的内容是文本]Clipboard sysClb=null;sysClb = Toolkit.getDefaultToolkit().getSystemClipboard();Transferable t = sysClb.getContents(null);//Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null); //跟上面三行代码一样try { if (null != t && t.isDataFlavorSupported(DataFlavor.stringFlavor)) { String text = (String)t.getTransferData(DataFlavor.stringFlavor); return text; } } catch (UnsupportedFlavorException e) {//System.out.println("Error tip: "+e.getMessage());} catch (IOException e) { } //System.out.println("Error tip: "+e.getMessage());return null; }
public static void setImageClipboard(Image image) { ImageSelection imgSel = new ImageSelection(image); Toolkit.getDefaultToolkit().getSystemClipboard().setContents(imgSel, null); } public static class ImageSelection implements Transferable { private Image image; public ImageSelection(Image image) {this.image = image;} 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 (!DataFlavor.imageFlavor.equals(flavor)) {throw new UnsupportedFlavorException(flavor);} return image; }}
5,获取系统剪切板内容[剪切板中内容为图片型]
public static Image getImageClipboard() { Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null); try { if (null != t && t.isDataFlavorSupported(DataFlavor.imageFlavor)) { Image image = (Image)t.getTransferData(DataFlavor.imageFlavor); return image; } } catch (UnsupportedFlavorException e) { //System.out.println("Error tip: "+e.getMessage());} catch (IOException e) { //System.out.println("Error tip: "+e.getMessage());} return null; }
6,使用方式
类名.setSystemClipboard("这里是新设置的剪切板的内容"); //给剪切板设置文本型内容 String clbContent = 类名.getSystemClipboard(); //获取剪切板的文本型内容Image img = new Image("xpic.jpg")类名.setImageClipboard(img); //给剪切板设置图片型内容 Image img2 = 类名.getImageClipboard(); //获取剪切板的图片型内容操作的内容常用的有图片和文本型数据,当然还有其他的,可对应的修改方法,和引入对应的包;
- Java中剪切板的操作
- Java中剪切板的操作
- Java中有关剪切板的操作
- WINDOWS中关于剪切板的编程操作
- MFC中对于剪切板的简单操作
- C#中操作剪切板
- Java操作剪切板
- Java剪切板操作大全
- Java 操作剪切板
- Java中的剪切板操作
- DataGridView 剪切板的操作
- 剪切板的操作
- QClipboard 剪切板的操作
- JAVA的剪切板
- 对于剪切板的一些操作
- 如何在Java程序中读写系统剪切板的数据
- 剪切板操作
- 剪切板操作
- 技巧_网络_UDP打洞
- RelativeLayout的addRule方法
- 编程之美24点游戏感悟
- Android 磁盘管理 (2)
- js验证是否是一个时间
- Java中剪切板的操作
- js工具类
- eclipse下删除所有空行
- Android 磁盘管理 (3)
- jquery 插件 validate 总结
- 说说筑巢引凤
- 三种链接方式详解(HASH JOIN MERGE JOIN NESTED LOOP)
- explicit和implicit关键字
- 财付通能帮微信变现?这就是个笑话!