X
Xrayboy
решил сохранять настройки в XML. При создании settings.xml всё проходит без ошибок.
Потом при чтении файла ...
Файл ...
Чем читаем ...
Если использовать типа textBoxClientString.Text = reader.GetAttribute("client_strings"); то происходит исключение ...
Исключение: Процесс не может получить доступ к файлу " ... bin\Debug\settings.xml", так как этот файл используется другим процессом.
Самое что прикольное что значение reader.GetAttribute("client_strings") передаётся в textBoxClientString.Text адекватно один раз, то есть если метод первый из четырёх(если остальные раскоментировать).
Почему такое происходит? Если закоментировать строку с методом, то ошибки нет, а если раскоментировать один получается ошибка, но значение присвоится полю одекватное. Если открыть все четыре, то так же будет ошибка, но первый прочитается и присвоится полю одекватно.
Потом при чтении файла ...
Файл ...
Код:
<?xml version="1.0" encoding="utf-8"?>
<setting>
<files client_setitem="H:\Users\333\documents\visual studio 2010\Projects\xml_teacher\xml_teacher\bin\Debug\client_setitem.xml" item_sets="item_sets.xml" client_items="H:\Users\333\documents\visual studio 2010\Projects\xml_teacher\xml_teacher\bin\Debug\client_items.xml" client_strings="H:\Users\333\documents\visual studio 2010\Projects\xml_teacher\xml_teacher\bin\Debug\client_strings.xml" />
</setting>
Чем читаем ...
Код:
XmlTextReader reader = null;
try
{
reader = new XmlTextReader("settings.xml");
// пропускаем пустые узлы
reader.WhitespaceHandling = WhitespaceHandling.None;
while (reader.Read())
if (reader.NodeType == XmlNodeType.Element)
if (reader.Name == "files")
{
//textBoxClientItems.Text = reader.GetAttribute("client_items");
//textBoxSaveItemSets.Text = reader.GetAttribute("item_sets");
//textBoxClientSetItem.Text = reader.GetAttribute("client_setitem");
textBoxClientString.Text = reader.GetAttribute("client_strings");
}
}
catch (Exception ex)
{
richTextBoxlog.Text = "Исключение: " + ex.Message + "\n";
}
finally
{
if (reader != null)
reader.Close();
}
Если использовать типа textBoxClientString.Text = reader.GetAttribute("client_strings"); то происходит исключение ...
Исключение: Процесс не может получить доступ к файлу " ... bin\Debug\settings.xml", так как этот файл используется другим процессом.
Самое что прикольное что значение reader.GetAttribute("client_strings") передаётся в textBoxClientString.Text адекватно один раз, то есть если метод первый из четырёх(если остальные раскоментировать).
Почему такое происходит? Если закоментировать строку с методом, то ошибки нет, а если раскоментировать один получается ошибка, но значение присвоится полю одекватное. Если открыть все четыре, то так же будет ошибка, но первый прочитается и присвоится полю одекватно.