XML и ошибка

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

XML и ошибка

Сообщение DRU » 17.07.2010 (Сб) 18:50

Что не так?

Код: Выделить всё
Dim myXML As New XmlDocument
        Dim myPath As String = "C:\1.xml"
        myXML.Load(myPath)
        Dim myXmlList As XmlNodeList
        myXmlList = myXML.LastChild.ChildNodes
        For i = 0 To myXmlList.Count - 1
            TextBox1.Text = TextBox1.Text & myXmlList.Item(i).Attributes.Item(4).Value & "= " & myXmlList.Item(i).Attributes.Item(5).Value & vbCrLf
        Next
Вложения
1.JPG
1.JPG (32.19 Кб) Просмотров: 1321

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: XML и ошибка

Сообщение FireFenix » 17.07.2010 (Сб) 19:12

Выложи весь проект
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: XML и ошибка

Сообщение DRU » 17.07.2010 (Сб) 19:16

FireFenix писал(а):Выложи весь проект

А смысл? Чистый проект. Весь код:

Код: Выделить всё
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim myXML As New XmlDocument
        Dim myPath As String = "C:\1.xml"
        myXML.Load(myPath)
        Dim myXmlList As XmlNodeList
        myXmlList = myXML.LastChild.ChildNodes
        For i = 0 To myXmlList.Count - 1
            TextBox1.Text = TextBox1.Text & myXmlList.Item(i).Attributes.Item(4).Value & "= " & myXmlList.Item(i).Attributes.Item(5).Value & vbCrLf
        Next

    End Sub

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: XML и ошибка

Сообщение FireFenix » 17.07.2010 (Сб) 19:38

DRU писал(а):А смысл? Чистый проект. Весь код:

Смысл в том, что либо не правильный код, либо XML... Весь проект - я имел ввиду с XML

Код: Выделить всё
TextBox1.Text = TextBox1.Text & myXmlList.Item(i).Attributes.Item(4).Value & "= " & myXmlList.Item(i).Attributes.Item(5).Value & vbCrLf

Может ты обращаешься к не существующим атрибутам...
Последний раз редактировалось FireFenix 17.07.2010 (Сб) 20:28, всего редактировалось 1 раз.
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: XML и ошибка

Сообщение DRU » 17.07.2010 (Сб) 19:58

Посмотри на картинку внимательно. Ничего не возвратилось)
Вложения
1.zip
(5.13 Кб) Скачиваний: 71

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: XML и ошибка

Сообщение FireFenix » 17.07.2010 (Сб) 20:18

DRU писал(а):Посмотри на картинку внимательно. Ничего не возвратилось)

В общем как я и говорил, у тебя тока 1 атрибут Id="170", а ты обращаешься к 4му myXmlList.Item(i).Attributes.Item(4).Value и 5му myXmlList.Item(i).Attributes.Item(5).Value, которых нет!

Код: Выделить всё
        Dim XML As New XmlDocument

        Dim myPath As String = "C:\1.xml"
        XML.Load(myPath)

        Dim i, j As Integer

        Dim XmlList As XmlNodeList

        If XML.HasChildNodes AndAlso XML.LastChild.HasChildNodes Then
            XmlList = XML.LastChild.ChildNodes

            For i = 0 To XmlList.Count - 1
                If XmlList(i).HasChildNodes Then
                    If XmlList(i).Attributes.Count > 0 Then
                        Console.WriteLine(XmlList(i).Attributes(0).Name & " = " & XmlList(i).Attributes(0).Value)
                        Console.WriteLine()
                    End If

                    For j = 0 To XmlList(i).ChildNodes.Count - 1
                        Console.WriteLine(XmlList(i).ChildNodes(j).Name & " = " & XmlList(i).ChildNodes(j).InnerText)
                    Next

                    Console.WriteLine("----------")
                End If
            Next
        End If

Результат
Код: Выделить всё
Id = 170

NumCode = 036
CharCode = AUD
Scale = 1
Name = Австралийский доллар
Rate = 1500.73
----------
Id = 191

NumCode = 975
CharCode = BGN
Scale = 1
Name = Болгарcкий лев
Rate = 1572.61
----------
Id = 224

NumCode = 980
CharCode = UAH
Scale = 1
Name = Гривна
Rate = 273.29
----------
Id = 36

NumCode = 208
CharCode = DKK
Scale = 1
Name = Датская крона
Rate = 412.89
----------

//и т.д.
Последний раз редактировалось FireFenix 17.07.2010 (Сб) 20:27, всего редактировалось 1 раз.
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: XML и ошибка

Сообщение DRU » 17.07.2010 (Сб) 20:20

Это да))
А там, видимо, ссылка.
З.Ы. Погорячился ты с текстом

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: XML и ошибка

Сообщение FireFenix » 17.07.2010 (Сб) 20:22

З.Ы. Погорячился ты с текстом

?
Нужно было как-то по другому?
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: XML и ошибка

Сообщение DRU » 17.07.2010 (Сб) 20:25

FireFenix писал(а):
З.Ы. Погорячился ты с текстом

?

И так верю что работает. Слишком много текста выложил)
Спасибо за ответ.


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList