Чтение данных из XML

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
kifiro
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 06.09.2008 (Сб) 18:57

Чтение данных из XML

Сообщение kifiro » 07.09.2008 (Вс) 8:10

Есть XML файл на сервере, который постоянно обновляется, возникла проблема с его загрузкой, если с харда
XXX.load "c:\1.xml"

то как быть с загрузкой из интернета?

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Чтение данных из XML

Сообщение Antonariy » 07.09.2008 (Вс) 17:16

load прекрасно понимает интернет-адреса.
Лучший способ понять что-то самому — объяснить это другому.

kifiro
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 06.09.2008 (Сб) 18:57

Re: Чтение данных из XML

Сообщение kifiro » 07.09.2008 (Вс) 23:11

Хм....
Пишу значит:
Код: Выделить всё
Set xmlParser = CreateObject("Msxml2.DOMDocument")
xmlParser.async = False
xmlParser.Load "http://xxx.ru/test.xml"
Set colNodes = xmlParser.getElementsByTagName("item")
For Each nodeProduct In colNodes
Label1.Caption = Label1.Caption + "-" + nodeProduct.getAttribute("x")
Label2.Caption = Label2.Caption + "-" + nodeProduct.getAttribute("y")
Next

Пустоту получаю, а если
Код: Выделить всё
xmlParser.Load "c:\test.xml"

Всё замечательно.

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Re: Чтение данных из XML

Сообщение dr.MIG » 08.09.2008 (Пн) 0:01

А как насчёт после load подождать полной загрузки файла? Она ведь не мгновенно происходит и просто не успевает за скоростью выполнения кода.
Salus populi suprema lex

kifiro
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 06.09.2008 (Сб) 18:57

Re: Чтение данных из XML

Сообщение kifiro » 08.09.2008 (Пн) 18:45

Ставил задержку, не помогло(

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Re: Чтение данных из XML

Сообщение Andrey Fedorov » 09.09.2008 (Вт) 11:08

Типа так

Код: Выделить всё
    Do Until iПопытка > 10
        Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
        ' Создаем экземпляр объекта - XML парсера
        oXMLHTTP.Open "GET", sUrlRequest, False, StrReverse("shsdhj"), StrReverse("351423")
        oXMLHTTP.send
        If oXMLHTTP.Status = 200 Then
            If X.loadXML(oXMLHTTP.responseText) Then Exit Do
        End If
        If Not oXMLHTTP Is Nothing Then oXMLHTTP.abort: Set oXMLHTTP = Nothing
        DoEvents
        iПопытка = iПопытка + 1
    Loop
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Re: Чтение данных из XML

Сообщение ANDLL » 09.09.2008 (Вт) 12:10

Andrey Fedorov писал(а):Типа так

Код: Выделить всё
    Do Until iПопытка > 10
        Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
        ' Создаем экземпляр объекта - XML парсера
        oXMLHTTP.Open "GET", sUrlRequest, False, StrReverse("shsdhj"), StrReverse("351423")
        oXMLHTTP.send
        If oXMLHTTP.Status = 200 Then
            If X.loadXML(oXMLHTTP.responseText) Then Exit Do
        End If
        If Not oXMLHTTP Is Nothing Then oXMLHTTP.abort: Set oXMLHTTP = Nothing
        DoEvents
        iПопытка = iПопытка + 1
    Loop
Довольно глупый по стилю код, а главное, "load прекрасно понимает интернет-адреса."
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

kifiro
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 06.09.2008 (Сб) 18:57

Re: Чтение данных из XML

Сообщение kifiro » 09.09.2008 (Вт) 14:30

Всем спасибо, задержка помогла!
Только почему-то браузер xml грузит намного быстрее чем load :x


Вернуться в Visual Basic 1–6

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

Сейчас этот форум просматривают: AhrefsBot, Yandex-бот и гости: 73

    TopList