private void search(object dir) { try { MyFunctions myf = new MyFunctions(); string paths = dir as string; string[] filepath = Directory.GetFiles(gl_NGLog, search_date.ToString("yyyyMMdd") + "*.csv"); foreach (string path in filepath) { if (AVI.Contains("1")) { GlobalVar.yeild_check_AVI1_result.AddRange(myf.SearchResult(path)); } if (AVI.Contains("2")) { GlobalVar.yeild_check_AVI2_result.AddRange(myf.SearchResult(path)); } if (AVI.Contains("3")) { GlobalVar.yeild_check_AVI3_result.AddRange(myf.SearchResult(path)); } } complete = true; } catch (Exception ex) { MessageBox.Show("未找到数据源,请重启程序!"); System.Environment.Exit(0); } }
private void ExportImage(DataTable dt) { //导出图片 this.BeginInvoke(new Action(() => { progress_Analysis.Value = 0; { string export_Path = Application.StartupPath + @"\Export\Pic\" + this.itemName + "\\" + DateTime.Now.ToString("yyyyMMddHHmm"); if (!Directory.Exists(export_Path)) { Directory.CreateDirectory(export_Path); } List <string> result = new List <string>(); List <string> barcode_list = new List <string>(); switch (AVI) { case "1": string[] filepath = Directory.GetFiles(GlobalVar.gl_val_Machine1_S1_TestResult + @"\" + analysisdate.ToString("yyyy-MM-dd"), analysisdate.ToString("yyyyMMdd") + "*.csv"); foreach (string path in filepath) { result.AddRange(myf.SearchResult(path, this.itemName)); } break; case "2": filepath = Directory.GetFiles(GlobalVar.gl_val_Machine2_S1_TestResult + @"\" + analysisdate.ToString("yyyy-MM-dd"), analysisdate.ToString("yyyyMMdd") + "*.csv"); foreach (string path in filepath) { result.AddRange(myf.SearchResult(path, this.itemName)); } break; case "3": filepath = Directory.GetFiles(GlobalVar.gl_val_Machine3_S1_TestResult + @"\" + analysisdate.ToString("yyyy-MM-dd"), analysisdate.ToString("yyyyMMdd") + "*.csv"); foreach (string path in filepath) { result.AddRange(myf.SearchResult(path, this.itemName)); } break; default: break; } progress_Analysis.Value = 30; try { string temp1 = this.itemName.Substring(this.itemName.IndexOf('_') + 1); string item = temp1.Substring(temp1.IndexOf('_') + 1); //获取所有条码 foreach (string temp in result) { string[] arr_result = temp.Split('|'); if (wetherExportPic) { if (arr_result[1].Contains(item) && ResultBetweenValue(arr_result[8], dt)) { barcode_list.Add(arr_result[8]); } } else { if (ResultBetweenValue(arr_result[8], dt)) { barcode_list.Add(arr_result[8]); } } } progress_Analysis.Value = 60; foreach (string barcode in barcode_list) { if (barcode.Length < 16) { continue; } string[] paths = myf.FindAllImageByBarcode(barcode); foreach (string path in paths) { FileInfo file = new FileInfo(path); string filefullName = file.Name; if (cb_export.Checked) { if (!Directory.Exists(export_Path + "\\" + barcode)) { Directory.CreateDirectory(export_Path + "\\" + barcode); } string fileName_Path = export_Path + "\\" + barcode + "\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } else { if (path.Contains("主站主")) { if (!Directory.Exists(export_Path + "\\主站主")) { Directory.CreateDirectory(export_Path + "\\主站主"); } string fileName_Path = export_Path + "\\主站主\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } else if (path.Contains("从站主")) { if (!Directory.Exists(export_Path + "\\从站主")) { Directory.CreateDirectory(export_Path + "\\从站主"); } string fileName_Path = export_Path + "\\从站主\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } else if (path.Contains("从站副")) { if (!Directory.Exists(export_Path + "\\从站副\\")) { Directory.CreateDirectory(export_Path + "\\从站副\\"); } string fileName_Path = export_Path + "\\从站副\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } else if (path.Contains("主站副")) { if (!Directory.Exists(export_Path + "\\主站副\\")) { Directory.CreateDirectory(export_Path + "\\主站副\\"); } string fileName_Path = export_Path + "\\主站副\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } else if (path.Contains("主站")) { if (!Directory.Exists(export_Path + "\\主站\\")) { Directory.CreateDirectory(export_Path + "\\主站\\"); } string fileName_Path = export_Path + "\\主站\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } else { if (!Directory.Exists(export_Path + "\\TEMP")) { Directory.CreateDirectory(export_Path + "\\TEMP"); } string fileName_Path = export_Path + "\\TEMP\\" + filefullName; if (!File.Exists(fileName_Path)) { file.CopyTo(fileName_Path); } } } } } progress_Analysis.Value = 100; MessageBox.Show("导出完成!"); } catch (Exception ex) { MessageBox.Show("导出异常!" + ex.ToString()); } } })); }