void getdataLog() { while (true) { Thread.Sleep(2000); _lstLogData.Clear(); string fileLoad = string.Format(Application.StartupPath + @"\Datalog\{0}.txt", DateTime.Now.ToString("yyyy-MM-dd")); if (!File.Exists(fileLoad)) { continue; } string[] arrdata = File.ReadAllLines(fileLoad); for (int i = 0; i < arrdata.Length; i++) { clsLogData log = new clsLogData(); string textforline = arrdata[i]; if (string.IsNullOrEmpty(textforline)) { continue; } string[] data = textforline.Split(';'); log.No = Lib.ToInt(data[0]); log.CellID = data[1]; log.Datenow = data[2]; log.X = Lib.ToDouble(data[3]); log.Y = Lib.ToDouble(data[4]); log.Theta = Lib.ToDouble(data[5]); log.Result = data[6]; _lstLogData.Add(log); } int countAll = _lstLogData.Count; int countNG = _lstLogData.Count(o => o.Result == "NG"); int countOK = countAll - countNG; this.Invoke((MethodInvoker) delegate { grvDatacurrent.DataSource = null; grvDatacurrent.AutoGenerateColumns = true; grvDatacurrent.DataSource = _lstLogData.OrderByDescending(o => o.No).Take(28).ToList(); foreach (DataGridViewRow item in grvDatacurrent.Rows) { if (item.Cells[3].FormattedValue.ToString() == "NG") { item.DefaultCellStyle.BackColor = Color.Red; } } txtTotal.Text = countAll.ToString(); txtTotalNG.Text = countNG.ToString(); txtTotalOK.Text = countOK.ToString(); //.OrderByDescending(o => Lib.ToInt(o.count)).Take(20).ToList(); }); } }
void saveDatalog(clsLogData data) { string fileSaveDataLog_check = string.Format(Application.StartupPath + @"\Datalog"); string fileSaveDataLog = string.Format(Application.StartupPath + @"\Datalog\{0}.txt", DateTime.Now.ToString("yyyy-MM-dd")); if (!File.Exists(fileSaveDataLog_check) && data.CellID != "") { string value = $"{_lstLogData.Count + 1};{data.CellID };{data.Datenow};{data.X};{data.Y};{data.Theta};{data.Result}"; File.AppendAllText(fileSaveDataLog, Environment.NewLine + value); } ; _lstLogData.Add(data); }