不是已经知道了路径的,是可以自行选择任意路径文件夹的

解决方案 »

  1.   

    http://www.cnblogs.com/xiachufeng/archive/2010/08/07/1794631.html指定路径可以操作的,难道‘变路径’的不行? 肯定行 发个链接吧
      

  2.   

    呃,我刚接触C#,想要编一个windows窗体程序,就是那种可以任意选择某个文件夹然后将其中的所有文件复制到任意选择的目标文件夹中,参考了很多范例但是他们的文件夹在编程前就已经固定的,没有参考我又比较笨,无从下手啊
      

  3.   

    这个题目比较大,你先用listview做个资源管理器,显示目录列表,然后当你选择某个目录,你就可以从点击事件中获取所点的目录的path(c:\xxx\xxx之类的数据),然后用filestream或streamreader读取,后再用streamwriter写入某个textbox里输入的自定义文件夹目录。
      

  4.   

    public static void CreateDirectory(this string dirPath)
            {
                if (!Directory.Exists(dirPath))
                {
                    Directory.CreateDirectory(dirPath);
                }
            }        public enum CopyType
            { 
                File,
                Directory
            }        /// <summary>
            /// 将fromDir文件夹下的所有文件及文件夹Copy至toDir下
            /// </summary>
            /// <param name="fromDir">来源(物理路径)</param>
            /// <param name="toDir">目的地(物理路径)</param>
            /// <param name="copyType">要复制的类型(注意:可以指定只复制文件夹结构,但指定复制文件则必定复制文件夹结构)</param>
            /// <param name="noNeedCopyRules">不需要复制的规则(名字正则)</param>
            /// <param name="isNoNeedCopy">是否存在不需要复制的文件或文件夹,true为不需要复制</param>
            public static void Copy(string fromDir, string toDir, CopyType copyType, string noNeedCopyRules,bool isNoNeedCopy)
            {
                if (Directory.Exists(fromDir))
                {
                    string[] childDir = Directory.GetDirectories(fromDir);
                    if (childDir != null && childDir.Length > 0)
                    {
                        foreach (string tS in childDir)
                        {
                            if (isNoNeedCopy && System.Text.RegularExpressions.Regex.IsMatch(tS, noNeedCopyRules))
                            {
                                continue;
                            }                        Copy(tS, toDir + tS.Substring(fromDir.Length), copyType, noNeedCopyRules, isNoNeedCopy);
                        }
                    }
                    else
                    {
                        toDir.CreateDirectory();
                    }                if (copyType == CopyType.File)
                    {
                        string[] fi = Directory.GetFiles(fromDir);
                        if (fi != null && fi.Length > 0)
                        {
                            foreach (string f in fi)
                            {
                                if (isNoNeedCopy && System.Text.RegularExpressions.Regex.IsMatch(f, noNeedCopyRules))
                                {
                                    continue;
                                }                            string toFilePath = toDir + f.Substring(fromDir.Length);                            if (File.Exists(toFilePath))
                                {
                                    File.Delete(toFilePath);
                                }                            File.Copy(f, toFilePath);
                            }
                        }
                    }
                }
            }