时常我们会遇到文件的复制、上传等问题。特别是自动化生产方面,需要对机台抛出的档案进行搬运、收集,然后对资料里的数据等进行分析,等等。
Winform下,列举集中较常见的档案的搬运。
1 private void MoveFile() 2 { 3 string Frompath = @"D:\Test\OutPut"; 4 string directoryPath = @"D:\report"; 5 try 6 { 7 string[] picList = Directory.GetFiles(Frompath, "*.jpg"); //图片 8 string[] txtList = Directory.GetFiles(Frompath, "*.txt"); //文本文件 9 string[] pdfList = Directory.GetFiles(Frompath, "*.pdf"); //PDF文件 10 11 foreach (string f in picList) 12 { 13 //取得文件名. 14 string fName = f.Substring(Frompath.Length + 1); 15 File.Copy(Path.Combine(Frompath, fName), Path.Combine(directoryPath, fName), true); 16 } 17 foreach (string f in txtList) 18 { 19 string fName = f.Substring(Frompath.Length + 1); 20 try 21 { 22 File.Copy(Path.Combine(Frompath, fName), Path.Combine(directoryPath, fName)); 23 } 24 // 捕捉异常. 25 catch (IOException copyError) 26 { 27 MessageBox.Show(copyError.Message); 28 } 29 } 30 foreach (string f in pdfList) 31 { 32 string fName = f.Substring(Frompath.Length + 1); 33 try 34 { 35 File.Copy(System.IO.Path.Combine(Frompath, fName), System.IO.Path.Combine(directoryPath, fName)); 36 } 37 catch (IOException copyError) 38 { 39 MessageBox.Show(copyError.Message); 40 return; 41 } 42 } 43 //删除原始文件夹里的文件 44 foreach (string f in txtList) 45 { 46 File.Delete(f); 47 } 48 foreach (string f in picList) 49 { 50 File.Delete(f); 51 } 52 foreach (string f in pdfList) 53 { 54 File.Delete(f); 55 } 56 57 } 58 catch (DirectoryNotFoundException dirNotFound) 59 { 60 MessageBox.Show(dirNotFound.Message); 61 } 62 }