public static void load(string fileName) { try { StreamReader file = new StreamReader(fileName, Encoding.UTF8); records.Clear(); while (!file.EndOfStream) { string[] elements = file.ReadLine().Split('|'); string[] exceptions = (elements[1] != "") ? elements[1].Split('?') : new string[0]; Record record = new Record(elements[0], exceptions, Convert.ToInt16(elements[2]), elements[3]); records.Add(record); } file.Close(); } catch { MessageBox.Show("Не могу загрузить файл \"" + fileName + "\"", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void saveButton_Click(object sender, EventArgs e) { if (pathTextEdit.Text == "") { MessageBox.Show("Пожалуйста, выберите файл или каталог для резервного копирования", "Уведомление", MessageBoxButtons.OK, MessageBoxIcon.Information); pathTextEdit.Focus(); return; } if (pathTextEdit.Text[pathTextEdit.Text.Length - 1] == '*') { if (!Directory.Exists(pathTextEdit.Text.Remove(pathTextEdit.Text.Length-3, 3))) { MessageBox.Show("Каталог не существует", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Information); pathTextEdit.Focus(); return; } } else { if (!File.Exists(pathTextEdit.Text)) { MessageBox.Show("Файл не существует", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Information); pathTextEdit.Focus(); return; } } if (outputTextBox.Text == "") { MessageBox.Show("Пожалуйста, выберите папку и укажите имя создаваемого архива", "Уведомление", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } Session.modified = true; string[] exceptions = new string[listBox.Items.Count]; listBox.Items.CopyTo(exceptions, 0); Record newRecord = new Record(pathTextEdit.Text, exceptions, (noCompressionCheckBox.Checked) ? 0 : (int)compressionUpDown.Value, outputTextBox.Text); if (_id == -1) { //Добавить запись Session.records.Add(newRecord); } else { //Изменить Session.records[_id] = newRecord; } Close(); }