/// <summary> /// 將解壓後的文件複製到指定文件夾 /// </summary> /// <param name="srcPath">解壓後的文件夾路徑</param> /// <param name="aimPath">指定文件夾路徑</param> public void CopyDir(string srcPath, string aimPath) { try { // 檢查目標目錄是否以目錄分割字符結束若是不是則添加 if (aimPath[aimPath.Length - 1] != Path.DirectorySeparatorChar) { aimPath += Path.DirectorySeparatorChar; } // 判斷目標目錄是否存在若是不存在則新建 if (!Directory.Exists(aimPath)) { Directory.CreateDirectory(aimPath); } // 獲得源目錄的文件列表,該裏面是包含文件以及目錄路徑的一個數組 // 若是你指向copy目標文件下面的文件而不包含目錄請使用下面的方法 // string[] fileList = Directory.GetFiles(srcPath); string[] fileList = Directory.GetFileSystemEntries(srcPath); // 遍歷全部的文件和目錄 foreach (string file in fileList) { //只複製PDF文件 if (file.Substring(file.LastIndexOf(".") + 1).ToUpper() == "PDF") { // 先看成目錄處理若是存在這個目錄就遞歸Copy該目錄下面的文件 if (Directory.Exists(file)) { CopyDir(file, aimPath + Path.GetFileName(file)); } // 不然直接Copy文件 else { File.Copy(file, aimPath + Path.GetFileName(file), true); } } } } catch (Exception ex) { throw ex; } }