Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Xml.load не находит файл на диске, Удаление ноды из xml и перезапись файла 
:(
    Опции темы
vinograd2008
Дата 5.2.2012, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 7.12.2008

Репутация: нет
Всего: нет



Здравствуйте. Есть xml файл на диске нужно получить к нему доступ и удалить из него ноду Termin одну или несколько. То есть в этом файле может быть несколько нод Termin. Удаление ноды работает. Но не удается получить доступ к файлу в xmldoc.Load возникает исключение что файл не найден хотя файл есть на диске. Как это исправить чтобы работало?

Файл 1.xml

Код


<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/xsl' href='stylesheet.xsl'?>
<Root>
  <Statya>
    <Termin>Термодинамика</Termin>
  </Statya>
</Root>



Код как сделано сейчас

Код


System.Collections.ArrayList selected = new System.Collections.ArrayList(listBox.SelectedItems);
            foreach (Object selectedItem in selected)
            {
                listBox.Items.Remove(selectedItem);

                string fmresu = "1";

                if (fmresu != "")
                {
                    string filexm = @"D:\Новая папка\" + fmresu + ".xml";

                    if (!File.Exists(filexm))
                    {
                        System.Windows.Forms.MessageBox.Show("File \"" + filexm + "\", not found!");
                        return;
                    }
                    else
                    {
                        xmldoc.Load(filexm);

                        XmlNode node1 = xmldoc.SelectSingleNode("//Root/Statya");

                        XmlNode node3 = xmldoc.SelectSingleNode("//Root/Statya/Termin");

                        node3.InnerText = selectedItem.ToString();

                        if (node3.InnerText == selectedItem.ToString())
                        {
                            node1.RemoveChild(node3);

                            xmldoc.Save(filexm);
                        }
                    }
                }
            }


PM MAIL   Вверх
HoTMetaL
Дата 1.3.2012, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 15.4.2007

Репутация: нет
Всего: 4



Мой код:
Код

            string fmresu = "1";
            string filexm = @"c:\Новая папка\" + fmresu + ".xml";
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(filexm);

Файл как понимаешь у меня лежит на диске C:.
Всё нормально открывается.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0984 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.