powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Чтение и запись XML документа
2 сообщений из 2, страница 1 из 1
Чтение и запись XML документа
    #32925159
JeSert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Облазил много не нашол нормального примера, который бы у меня правильно работал есть к примеру xml документ
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<товар>
       <хлеб>
              <белый>
                    <предприятие name="Колобки"/>
                    <предприятие name="Пекарня Макаревича"/>
                    <предприятие name="Булки и Ко"/>
              </белый>
              <черный>
                    <предприятие name="Емеля"/>
                    <предприятие name="Змей Гороныч"/>
                    <предприятие name="Пирожки Инт."/>
              </черный>
       </хлеб>
       <масло>
              <белый>
                    <предприятие name="Колобки"/>
                    <предприятие name="Пекарня Макаревича"/>
                    <предприятие name="Булки и Ко"/>
              </белый>
              <черный>
                    <предприятие name="Емеля"/>
                    <предприятие name="Змей Гороныч"/>
                    <предприятие name="Пирожки Инт."/>
              </черный>
       </масло>
</товар>

далее мой код
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
xmlRead = new XmlTextReader("course.xml");
xmlRead.WhitespaceHandling = WhitespaceHandling.None; // пропускаем пустые узлы
while(xmlRead.Read())
{
	if(xmlRead.NodeType == XmlNodeType.Element)
	{
		if(xmlRead.Name == "белый")
		{
			while(xmlRead.Read() && xmlRead.Name == "предприятие")
			{
				MessageBox.Show(xmlRead.GetAttribute("name").ToString());
			}
		}
	}
}
ТАК вот я знаю что тут неправильно хотя я брал с реального примера
получаетца что он заходит во все узлы "белый", а мне нужно что бы только в хлеб и ВСЕ
...
Рейтинг: 0 / 0
Чтение и запись XML документа
    #32926016
Melo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, например, вот так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
xmlRead = new XmlTextReader("d:\\tmp\\bread\\src.xml");
xmlRead.WhitespaceHandling = WhitespaceHandling.None; // пропускаем пустые узлы
bool bread = false;
while(xmlRead.Read())
{
	switch(xmlRead.NodeType)
	{
		case XmlNodeType.Element:
			if(xmlRead.Name == "хлеб")
			{
				bread = true;
			}
			else 
			{
				if(bread && xmlRead.Name == "белый")
				{
					while(xmlRead.Read() && xmlRead.Name == "предприятие")
					{
						MessageBox.Show(xmlRead.GetAttribute("name").ToString());
					}
				}
			}
			break;
		case XmlNodeType.EndElement:
			if(xmlRead.Name == "хлеб")
			{
				bread = false;
			}
			break;
		default:
			break;
	}
}	
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Чтение и запись XML документа
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]