获取文件夹的名称,并分类移动

有几个文件夹名为“1.1,1.2,1.3,2.1,2.2,2.3,....”,移动到选择文件夹,
并创建 以“.”前面的字为名创建文件夹 “1,2”,并把‘1.1,1.2,1.3’,‘2.1,2.2,2.3’移入到创建的文件夹

有一个简单办法,直接把点替换成斜杠,然后直接创建这个目录

Directory.GetDirectories获取指定文件夹下的目录,然后遍历文件目录路径数组,用\字符split下获取最后一下得到你的1.1这个目录,然后再用.字符split下得到要目标文件夹名称,然后判断路径是否存在,不存在就创建,最后通过

 DirectoryInfo di= new DirectoryInfo("原来的路径");
 di.MoveTo("新创建的目标路径");

进行目录移动

在D:\测试目录下建立1.1、1.2、1.3、2.1、2.2、2.3等几个文件夹,然后运行我下面的程序。

 namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string sourcePath = @"D:\测试";
            string destPath = @"D:\整理好的文件夹";
            string[] dirs = Directory.GetDirectories(sourcePath);
            foreach (string dir in dirs)
            {
                string destDirName = Path.Combine(destPath, Math.Floor(Convert.ToDecimal(Path.GetFileName(dir))).ToString());
                if (!Directory.Exists(destDirName))
                {
                    Directory.CreateDirectory(destDirName);
                }
                Directory.CreateDirectory(Path.Combine(destDirName, Path.GetFileName(dir)));
            }

            Console.WriteLine("文件夹分类成功");
        }
    }
}