Пытаюсь сделать редактор cfg файла (конфиг для коммутатора), в котором нужно изменить 2 значения. Суть такова - открыть конфиг (указать путь до файла), в текстбоксы вписать ip и milticast_ip и нажать "заменить", далее программа ищет строчку, содержащую часть команды, удаляет ее и вписывает заново часть команды уже с имеющимся значением из текстбокса.
private void selectBtn_Click(object sender, RoutedEventArgs e)
{
Microsoft.Win32.OpenFileDialog openFileDialog = new Microsoft.Win32.OpenFileDialog();
openFileDialog.Filter = "CFG files (*.cfg)|*.cfg";
if (openFileDialog.ShowDialog() == true)
cfgPath.Text = openFileDialog.FileName;
}
private void replaceBtn_Click(object sender, RoutedEventArgs e)
{
string ipKomm = ipTxt.Text;
if (cfgPath.Text != "")
{
string line = null;
string line_to_delete = "config ipif System ipaddress";
using (StreamReader reader = new StreamReader(cfgPath.Text)){
using (StreamWriter writer = new StreamWriter(cfgPath.Text)){
while ((line = reader.ReadLine()) != null){
if (String.Compare(line, line_to_delete) == 0)
continue;
writer.WriteLine(line);
}
}
}
}
else {
MessageBox.Show("Выберите файл для редактирования!");
}
Сначала я выбираю нужный файл, он записывается, как путь в текстбокс, ниже в форме есть еще 2 текстбокса, в которые вписываю нужные параметры и кнопка "заменить" (replaceBtn_Click) - при нажатии проверяю наличие пути в текстбоксе до файла, ищу удаляемую строку и получаю ошибку в строке "StreamWriter writer = new StreamWriter(cfgPath.Text))" ... Подскажите, что я делаю не так или как мне реализовать то, что я хочу сделать?
Продвижение своими сайтами как стратегия роста и независимости