コード例 #1
0
        /// <summary>
        /// 读文件
        /// </summary>
        /// <param name="filename">文件名</param>
        /// <returns></returns>
        public static List <RealTimeMonitoringModel> ReadFile(string filename)
        {
            List <RealTimeMonitoringModel> filemedel = new List <RealTimeMonitoringModel>();
            StreamReader reader = new StreamReader(filename, Encoding.Default);
            string       line   = reader.ReadLine();
            int          flag   = 0;

            while ((line = reader.ReadLine()) != null)
            {
                if (line.Contains("Timestamp"))
                {
                    flag++;
                }
                if (flag == 2)
                {
                    break;
                }
            }
            while ((line = reader.ReadLine()) != null && flag > 0)
            {
                filemedel.Add(RealTimeMonitoringModel.Parse(line, filemedel.Count));
            }
            reader.Close();
            SaveFileThread sft = new SaveFileThread(filemedel, "");//开现存
            Thread         tsp = new Thread(sft.SaveFile);

            tsp.Start();
            return(filemedel);
        }
コード例 #2
0
        public static RealTimeMonitoringModel Parse(string line, int _recordid)
        {
            RealTimeMonitoringModel Model = new RealTimeMonitoringModel();

            string[] splt = line.Split('\t');//table隔开,split:分离
            Model.RecordID   = _recordid;
            Model.RecordTime = Convert.ToDateTime(splt[0]);
            //Model.RecordTime = DateTime.ParseExact(splt[0], "yyyy/MM/dd HH:mm:ss.sssss",null);
            Model.Stress1  = splt[1];
            Model.Stress2  = splt[2];
            Model.Stress3  = splt[3];
            Model.Stress4  = splt[4];
            Model.Stress5  = splt[5];
            Model.Stress6  = splt[6];
            Model.Stress7  = splt[7];
            Model.Stress8  = splt[8];
            Model.Stress9  = splt[9];
            Model.Stress10 = splt[10];
            Model.Stress11 = splt[11];
            Model.Stress12 = splt[12];
            Model.Stress13 = splt[13];
            Model.Stress14 = splt[14];
            Model.Stress15 = splt[15];
            Model.Stress16 = splt[16];
            Model.Stress17 = splt[17];
            Model.Stress18 = splt[18];
            Model.Stress19 = splt[19];
            Model.Stress20 = splt[20];
            Model.Stress21 = splt[21];
            Model.Stress22 = splt[22];
            Model.Stress23 = splt[23];
            Model.Stress24 = splt[24];
            Model.Stress25 = splt[25];
            Model.Stress26 = splt[26];
            Model.Stress27 = splt[27];
            Model.Stress28 = splt[28];

            Model.Temperature1  = splt[29];
            Model.Temperature2  = splt[30];
            Model.Temperature3  = splt[31];
            Model.Temperature4  = splt[32];
            Model.Temperature5  = splt[33];
            Model.Temperature6  = splt[34];
            Model.Temperature7  = splt[35];
            Model.Temperature8  = splt[36];
            Model.Temperature9  = splt[37];
            Model.Temperature10 = splt[38];
            Model.Temperature11 = splt[39];
            Model.Temperature12 = splt[40];
            Model.Temperature13 = splt[41];
            Model.Temperature14 = splt[42];
            Model.Temperature15 = splt[43];
            Model.Temperature16 = splt[44];
            Model.Temperature17 = splt[45];
            Model.Temperature18 = splt[46];
            Model.Temperature19 = splt[47];
            Model.Temperature20 = splt[48];
            Model.Wave1         = splt[49];
            Model.Wave2         = splt[50];
            //bool flag = false;
            //if (Convert.ToDouble(Model.StressOne) >= 17.5)
            //{
            //    flag = true;
            //}
            //if (Convert.ToDouble(Model.TemperatureOne) >= 25.3)
            //{
            //                   flag = true;
            //}

            //if (Convert.ToDouble(Model.StressTwo) >= 15.5)
            //{
            //                    flag = true;
            //}

            //if (Convert.ToDouble(Model.TemperatureTwo) >= -4)
            //{
            //                    flag = true;
            //}


            //if (flag)
            //{
            //    FileOperate.SaveFile(Model);
            //}
            return(Model);
        }
コード例 #3
0
        /// <summary>
        /// 文件数据组取出显示数据
        /// </summary>
        /// <param name="data">文件数据</param>
        /// <param name="start">起始点</param>
        /// <param name="seconds">时间间隔 秒</param>
        /// <param name="MaxRecord">最大点数</param>
        /// <returns></returns>
        public static List <RealTimeMonitoringModel> GetRealTimeMonitoringModel(List <RealTimeMonitoringModel> data, RealTimeMonitoringModel start, int milliseconds, int MaxRecord = 60)
        {
            List <RealTimeMonitoringModel> Model = new List <RealTimeMonitoringModel>();
            DateTime dt = start.RecordTime.AddMilliseconds(milliseconds);

            for (int i = 0; i < MaxRecord; i++)
            {
                var q = data.Find(x => x.RecordTime == dt);//q储存的是查找出来的一个对象
                if (q != null)
                {
                    Model.Add(q);
                }
                milliseconds += milliseconds;
                dt            = start.RecordTime.AddSeconds(milliseconds);
            }
            return(Model);
        }