//************************** ЧТЕНИЕ ДАННЫХ ИЗ ФАЙЛА *****************************************************// //********************************************************************************************************// private bool LoadProfileFromFile(string filename) { ushort newStartAddr, tresh, newBlockCount; ushort index = 0; string line; try { using (StreamReader sr = new StreamReader(filename)) { List <ushort> fileParams = new List <ushort>(); line = sr.ReadLine(); fileParams = ConvertFuncs.LineToUshorts(line); if (fileParams.Count != 2) { MessageBox.Show(appTexts.ParameterName(66), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } newStartAddr = fileParams[0]; tresh = fileParams[1]; newBlockCount = (ushort)((tresh - newStartAddr + 1) / 16); tresh = (ushort)(newStartAddr + 16 * newBlockCount - 1); if (tresh != fileParams[1]) { MessageBox.Show(appTexts.ParameterName(66), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } systemProfile = new ushort[16 * newBlockCount]; for (int i = 0; i < newBlockCount; i++) { line = sr.ReadLine(); fileParams = ConvertFuncs.LineToUshorts(line); if (fileParams.Count != 2) { MessageBox.Show(appTexts.ParameterName(66), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } for (int i1 = 0; i1 < 4; i1++) { line = sr.ReadLine(); fileParams = ConvertFuncs.LineToUshorts(line); if (fileParams.Count != 4) { MessageBox.Show(appTexts.ParameterName(66), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } else { systemProfile[index++] = fileParams[0]; systemProfile[index++] = fileParams[1]; systemProfile[index++] = fileParams[2]; systemProfile[index++] = fileParams[3]; } } } } } catch { MessageBox.Show(appTexts.ParameterName(66), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } textBox1.Text = "0x" + newStartAddr.ToString("X4"); textBox2.Text = "0x" + (newStartAddr + 16 * newBlockCount - 1).ToString("X4"); return(true); }