zoukankan      html  css  js  c++  java
  • Winform调用系统的剪切,复制,粘贴文件功能

      做一个小软件,类似于资源管理器的操作形式,剪切,复制,粘贴自然是少不了的了,在MSDN中找来好久,总算是明白过来了,代码如下:

            /// <summary>
            /// 复制或剪切文件至剪贴板(方法)
            /// </summary>
            /// <param name="files">需要添加到剪切板的文件路径数组</param>
            /// <param name="cut">是否剪切true为剪切,false为复制</param>
            public static void CopyToClipboard(string[] files, bool cut)
            {
                if (files == null) return;
                IDataObject data = new DataObject(DataFormats.FileDrop, files);
                MemoryStream memo = new MemoryStream(4);
                byte[] bytes = new byte[] { (byte)(cut ? 2 : 5), 0, 0, 0 };
                memo.Write(bytes, 0, bytes.Length);
                data.SetData("Preferred DropEffect", memo);
                Clipboard.SetDataObject(data);
            }

            /// <summary>
            /// 获取剪贴板中的文件列表(方法)
            /// </summary>
            /// <returns>System.Collections.List<string>返回剪切板中文件路径集合</returns>
            public static  List<string> GetClipboardList()
            {
                List<string> clipboardList=new List<string>();
                System.Collections.Specialized.StringCollection sc = Clipboard.GetFileDropList();
                for (int i = 0; i < sc.Count; i++)
                {
                    string listfileName = sc[i];
                    clipboardList.Add(listfileName);
                }
                return clipboardList;
            }

  • 相关阅读:
    appium自动化测试搭建
    How to install Qt Creator on Ubuntu 18.04
    Luci
    OpenWrt 根文件系统启动过程分析
    shell 杂烩
    OpenWrt Luci 调试日志输出的一种方法
    jQuery实现购物车计算价格的方法
    js实现购物车添加,减少数量
    golang-键盘录入数据
    JAVA存储机制(栈、堆、方法区详解)
  • 原文地址:https://www.cnblogs.com/mane/p/2038937.html
Copyright © 2011-2022 走看看