近期有对Excel操作的需求,由于都是重复劳动,故分享代码如下,本人也是技术菜鸟没有考虑性能,如果有大牛能够指教就再好不过了
事先电脑中需要安装Excel,然后Vs中引用Microsoft.Office.Interop.Excel;
使用下方代码前请加上using Excel = Microsoft.Office.Interop.Excel;
前提:同种类型Excel文件名的格式都是:A(1)、A(2)这种。
利用正则表达式来分组,代码如下:
1 /// <summary> 2 /// 将同名Excel分组 3 /// </summary> 4 void MoveFile() 5 { 6 //改为你自己的路径 7 string path = @"C:\Users\Reasonable\Desktop\table"; 8 DirectoryInfo root = new DirectoryInfo(path); 9 FileInfo[] files = root.GetFiles(); 10 11 Regex fileRegex = new Regex(@".+(?=\()"); 12 13 foreach (var file in files) 14 { 15 var fileName = fileRegex.Match(file.Name).ToString(); 16 17 var targetPath = $@"{path}\{fileName}"; 18 19 //以文件名创建子目录 20 if (!Directory.Exists(targetPath)) 21 { 22 Directory.CreateDirectory(targetPath); 23 } 24 25 file.MoveTo(Path.Combine(targetPath, file.Name)); 26 } 27 28 Console.Read(); 29 } 30 }