Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / xmlreader / 7 сообщений из 7, страница 1 из 1
03.06.2014, 11:11
    #38659714
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
Добрый день, подскажите как прочитать файл xml
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?xml version="1.0" encoding="utf-8"?>
<root>
	<dict alias="country_dict" name="Государство">
		<item>
			<code>
				ABH
			</code>
			<value>
				АБХАЗИЯ
			</value>
		</item>
		<item>
			<code>
				AFG
			</code>
			<value>
				АФГАНИСТАН
			</value>
		</item>
    </dict>
</root>



начал так

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 Dim wr As New System.IO.StreamWriter("C:\wr.txt", False)
        Using reader As XmlReader = XmlReader.Create("C:\country_dict.xml")
            While reader.Read()  
                If reader.IsStartElement("item") Then                    
                Dim attribute_name As String = reader.Item("code") ' тут получаю nothing
                    Dim attribute_id As String = reader.Item("value") ' тут получаю nothing
                    If attribute_name IsNot Nothing Then 
                        MsgBox(attribute_name + ";" + attribute_id)                      
                    End If  
                End If
            End While
        End Using
подскажите что не так делаю?
        wr.Close()
...
Рейтинг: 0 / 0
03.06.2014, 11:39
    #38659767
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
bombimbomподскажите что не так делаю?
Все.

Вы определяете начало элемента и тут же думаете, что это атрибут. Иными словами, после элемента еще нужно сделать операцию чтения, чтобы получить атрибут. Для XmlReader обычно используется принцип стэка при парсинге.

С другой стороны гемморой с XmlReader оправдан только в случае массовой обработки реально больших Xml-документов. Чем вас не устраивает XDocument?
...
Рейтинг: 0 / 0
03.06.2014, 11:48
    #38659792
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
ну мне надо прочитать 2000 таких записей
что лучше использовать?
...
Рейтинг: 0 / 0
03.06.2014, 12:08
    #38659829
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
Arm79XDocument
...
Рейтинг: 0 / 0
03.06.2014, 12:40
    #38659891
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
bombimbom,
иногда лучше поставить вопрос в другом ключе - как мне десериализовать xml документ.
Поверьте потраченное время окупится с лихвой простотой использования.
...
Рейтинг: 0 / 0
03.06.2014, 12:48
    #38659918
bombimbom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
спасибо, использовал xdocument все получилось
просто хотелось разобраться с xmlreader
...
Рейтинг: 0 / 0
03.06.2014, 15:39
    #38660266
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xmlreader
такую XML'ку проще десериализовать, потом с такой же лёгкостью сериализовать обратно
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / xmlreader / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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