コード例 #1
0
ファイル: CResultCI.cs プロジェクト: Fail174/Charakterizator
        //пересоздаем архив для датчика в канале i
        public void SaveToArhiv(int i)
        {
            if ((Channal.Count <= 0) || (i >= Channal.Count))
            {
                Program.txtlog.WriteLineLog("CH:Отсутсвуют данные ЦАП для датчика в канале: " + i, 1);
                return;
            }
            SChanalCI    ch     = Channal[i];
            StreamWriter writer = CreateFileArhiv(ch);

            if (writer != null)
            {
                for (int j = 0; j < ch.Points.Count; j++)//перебор точек измерения для датчика
                {
                    writer.WriteLine(GetStringFromPoint(ch.Points[j]));
                }
                writer.Close();
                writer = null;
                Program.txtlog.WriteLineLog("CH:Данные ЦАП успешно записаны в архив: " + ch.FileNameArchiv, 0);
            }
            else
            {
                Program.txtlog.WriteLineLog("CH:Ошибка записи в архив данных ЦАП: " + ch.FileNameArchiv, 1);
            }
        }
コード例 #2
0
ファイル: CResultCI.cs プロジェクト: Fail174/Charakterizator
        //создаем файл  архива на диске
        private StreamWriter CreateFileArhiv(SChanalCI ch)
        {
            StreamWriter writer = null;

            writer = File.CreateText(ch.FileNameArchiv);//создаем файл БД
            if (writer != null)
            {
                writer.WriteLine(string.Format("Архив данных ЦАП"));
                writer.WriteLine(string.Format("Канал:{0}; Заводской номер:{1}", ch.ChannalNummber, ch.FactoryNumber));
                writer.WriteLine("-----------------------------------------------------------------------------------------------");
                writer.WriteLine(HeaderString);
                writer.WriteLine("-----------------------------------------------------------------------------------------------");
            }
            return(writer);
        }
コード例 #3
0
ファイル: CResultCI.cs プロジェクト: Fail174/Charakterizator
        public CResultCI(int ChannalCount, int[] FN)
        {
            StreamWriter fs;

            for (int i = 0; i < ChannalCount; i++)
            {
                SChanalCI ch = new SChanalCI(i + 1, FN[i]);
                Channal.Add(ch);
                Directory.CreateDirectory("CI");
                Directory.CreateDirectory("Archiv/CI");
                string filename = string.Format("CI/CI_Result{0}.txt", ch.ChannalNummber);
                fs = File.CreateText(filename);//создаем файл канала
                fs.WriteLine(string.Format("Результаты чтения ЦАП датчика в канале {0}, заводской номер {1}", ch.ChannalNummber, ch.FactoryNumber));
                fs.WriteLine(HeaderString);
                fs.Flush();
                FileStream.Add(fs);
            }
        }
コード例 #4
0
ファイル: CResultCI.cs プロジェクト: Fail174/Charakterizator
        //Добавление записи текущего измрения в архив для датчика в канале ch
        public void WriteToArhiv(SChanalCI ch, SPointCI point)
        {
            StreamWriter writer = null;

            if (!File.Exists(ch.FileNameArchiv))
            {
                writer = CreateFileArhiv(ch);
            }
            else
            {
                writer = new StreamWriter(ch.FileNameArchiv, true);//открываем файл БД
            }

            if (writer != null)
            {
                writer.WriteLine(GetStringFromPoint(point));
                writer.Close();
                writer = null;
            }
            else
            {
                Program.txtlog.WriteLineLog("CH:Ошибка записи в архив ЦАП: " + ch.FileNameArchiv, 1);
            }
        }
コード例 #5
0
ファイル: CResultCI.cs プロジェクト: Fail174/Charakterizator
        //Чтение из файла
        public void LoadFromFile()
        {
            StreamReader reader;

            try
            {
                for (int i = 0; i < Channal.Count; i++)//перебор каналов
                {
                    SChanalCI ch = Channal[i];
                    if (!File.Exists(ch.FileNameArchiv))
                    {
                        continue;
                    }
                    else
                    {
                        reader = new StreamReader(ch.FileNameArchiv);//открываем файл БД
                    }
                    if (reader != null)
                    {
                        string str = reader.ReadLine();
                        str = reader.ReadLine();
                        str = reader.ReadLine();
                        str = reader.ReadLine();
                        str = reader.ReadLine();
                        do
                        {
                            str = reader.ReadLine();
                            string[] strarr = str.Split('|');
                            SPointCI point;
                            if (strarr.Length > 3)
                            {
                                point.Datetime    = Convert.ToDateTime(strarr[0]);
                                point.Temperature = double.Parse(strarr[1].Replace(",", CultureInfo.InvariantCulture.NumberFormat.NumberDecimalSeparator), CultureInfo.InvariantCulture);
                                point.I4          = double.Parse(strarr[2].Replace(",", CultureInfo.InvariantCulture.NumberFormat.NumberDecimalSeparator), CultureInfo.InvariantCulture);
                                point.I20         = double.Parse(strarr[3].Replace(",", CultureInfo.InvariantCulture.NumberFormat.NumberDecimalSeparator), CultureInfo.InvariantCulture);

                                /*
                                 * point.Temperature = Convert.ToDouble(strarr[1]);
                                 * point.I4 = Convert.ToDouble(strarr[2]);
                                 * point.I20 = Convert.ToDouble(strarr[3]);
                                 */
                                ch.Points.Add(point);
                            }
                        } while (!reader.EndOfStream);
                        Program.txtlog.WriteLineLog("CI:Архив данных ЦАП загружен из файла: " + ch.FileNameArchiv, 0);

                        reader.Close();
                        reader = null;
                    }
                    else
                    {
                        Program.txtlog.WriteLineLog("CI:Ошибка доступа к архиву данных ЦАП: " + ch.FileNameArchiv, 1);
                        continue;
                    }
                }
            }
            catch
            {
                Program.txtlog.WriteLineLog("CI:Критическая ошибка чтения архива ЦАП!", 1);
            }
        }