Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » Парсер (Парсер данных XML)
Парсер
SergДата: Воскресенье, 18 Октября 2009, 23:41 | Сообщение # 1
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Такой вопрос, как мне получить вот эти данные в код программы для дальнейшей обработки?

 
DEMBELДата: Воскресенье, 18 Октября 2009, 23:42 | Сообщение # 2
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
это сделать очень просто посредством vbs скрипта



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
SergДата: Воскресенье, 18 Октября 2009, 23:44 | Сообщение # 3
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
В код программы MMB

 
DEMBELДата: Воскресенье, 18 Октября 2009, 23:49 | Сообщение # 4
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
ну а какие например данные ты хочешь получить, все чтоли? Что тебе нужно получить на выходе?



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
SergДата: Воскресенье, 18 Октября 2009, 23:51 | Сообщение # 5
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Мне необходимо весь этот текст загнать в код, а потом сохранить в текстовый файл.

 
DEMBELДата: Воскресенье, 18 Октября 2009, 23:51 | Сообщение # 6
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
ну ты сам сказал "парсить". что тебе мешает просто скачать файл как текстовый и читать из него в проект построчно.



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
SergДата: Воскресенье, 18 Октября 2009, 23:52 | Сообщение # 7
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Quote
ну ты сам сказал "парсить". что тебе мешает просто скачать файл как текстовый и читать из него в проект построчно.

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


 
YURIYДата: Воскресенье, 18 Октября 2009, 23:54 | Сообщение # 8
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Quote (Serg)
Дело в том что этот текст будет изменяться, мне нужно чтобы программа сама его считывала.

В чём проблема-то? Есть плагин для получения текста из удалённых файлов. Скачал, распарсил строковыми функциями MMB.



Вечная память Андрею Сергееву!
 
SergДата: Воскресенье, 18 Октября 2009, 23:57 | Сообщение # 9
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Спасибо за быстрые ответы.Как всегда помощь приходит быстро.
Юрий,подскажи название плагина.


 
DEMBELДата: Воскресенье, 18 Октября 2009, 23:57 | Сообщение # 10
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
Ну я тебе еще раз обьясняю, бери плагин какой нибудь и скачивай xml файл к себе на диск, и делай что хочешь с ним. Ну раз текст меняется, значит каждый раз качать будешь. По другому тут не сделаешь.



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
YURIYДата: Воскресенье, 18 Октября 2009, 23:58 | Сообщение # 11
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Quote (Serg)
Юрий,подскажи название плагина.

http://mmbuilder.ru/forum/12-1295-17899-16-1244948620



Вечная память Андрею Сергееву!
 
SergДата: Понедельник, 19 Октября 2009, 00:04 | Сообщение # 12
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Большое спасибо

 
YURIYДата: Понедельник, 19 Октября 2009, 00:05 | Сообщение # 13
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Там же, в самом конце темы, есть пример от меня, как скачать текст.


Вечная память Андрею Сергееву!
 
SergДата: Понедельник, 19 Октября 2009, 00:25 | Сообщение # 14
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Странно, сохранил текст в файл и хочу определить кол во строк
Code
RetVal=NOL(C:\temp.txt)
DisplayValue("EditBox","RetVal")

И результат всегда "1"


 
YURIYДата: Понедельник, 19 Октября 2009, 00:29 | Сообщение # 15
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Сценарий написан правильно. Значит, в файле действительно одна строка dont_know


Вечная память Андрею Сергееву!
 
SergДата: Понедельник, 19 Октября 2009, 00:30 | Сообщение # 16
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Я открываю файл, и там весь текст.Могу кинуть пример

 
YURIYДата: Понедельник, 19 Октября 2009, 00:33 | Сообщение # 17
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Значит, этот весь текст в одну строку. Раздели на 2 / напиши сам вторую и убедись.


Вечная память Андрею Сергееву!
 
SergДата: Понедельник, 19 Октября 2009, 00:38 | Сообщение # 18
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Вот
Дописываю текст на другой строке, результат тот же.

Добавлено (19 Октябрь 2009, 00:38)
---------------------------------------------
Тоже самое если заношу строку из файла в переменную, она получается пустая.В чём дело?

Прикрепления: 5476334.zip (34.9 Kb)




Сообщение отредактировал Serg - Понедельник, 19 Октября 2009, 00:36
 
YURIYДата: Понедельник, 19 Октября 2009, 00:43 | Сообщение # 19
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Странно. Создаю файл руками - всё правильно определяет...

Причём, пишу в созданный твоим проектом файл и в свой одни и те же строки - размер файлов разный.



Вечная память Андрею Сергееву!
 
SergДата: Понедельник, 19 Октября 2009, 00:44 | Сообщение # 20
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
У меня тоже самое, и название файла менял(ну мало ли)

 
YURIYДата: Понедельник, 19 Октября 2009, 00:50 | Сообщение # 21
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Нонсенс. Я без идей. Могу только предложить поискать другой плаг, мало ли...


Вечная память Андрею Сергееву!
 
RushДата: Понедельник, 19 Октября 2009, 15:50 | Сообщение # 22
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
Перевод строк в файле юниксовый.
Code
URL$ = 'http://informer.gismeteo.ru/xml/27543_1.xml'
PluginSet("PlugIn","URL$")
**
PluginRun("PlugIn","Codice")
**
PluginGet("PlugIn","Result$")
lf$=CHR(10)
crlf$=CHR(13) + CHR(10)
Result$=StrChange(Result$,lf$,crlf$)
RetVal=StrToFile(C:\Documents and Settings\Serg\Рабочий стол\temp.txt,Result$,TRUE,FALSE)
RetVal=NOL(C:\Documents and Settings\Serg\Рабочий стол\temp.txt)
DisplayValue("EditBox","RetVal")

А при редактировании в вин-редакторе переписывает под вин.
Плагин здесь ни при чем, он нормальный... :)

Блин, почему-то в CHR в коде пробел вставляет. Убирал, он опять появился. Исправлено

Сообщение отредактировал Rush - Понедельник, 19 Октября 2009, 15:54
 
SergДата: Понедельник, 19 Октября 2009, 17:06 | Сообщение # 23
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Так что можно с этим сделать?

 
SergДата: Понедельник, 19 Октября 2009, 17:20 | Сообщение # 24
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Загнал текст в плагин Алекса.
Прикрепления: 3784725.gif (13.4 Kb)


 
YURIYДата: Понедельник, 19 Октября 2009, 19:14 | Сообщение # 25
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Quote (Rush)
Перевод строк в файле юниксовый.

Quote (YURIY)
Причём, пишу в созданный твоим проектом файл и в свой одни и те же строки - размер файлов разный.

Так и думал, что здесь юникод замешан, так как у него на каждый символ идёт от двух байт.

Quote (Serg)
Так что можно с этим сделать?

Вот шутник :) Тебе выше Раш дал код! Замени его в кнопке. У меня всё работает правильно.

Quote (Rush)
Блин, почему-то в CHR в коде пробел вставляет. Убирал, он опять появился.

Попробовал поставить пробелы с обеих сторон "+" - сработало. Странно... В общем, код выше - полностью рабочий.



Вечная память Андрею Сергееву!
 
SergДата: Понедельник, 19 Октября 2009, 20:49 | Сообщение # 26
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Спасибо всем большое.

Добавлено (19 Октябрь 2009, 20:49)
---------------------------------------------
Ещё вопрос, как при нажатии на кнопку в программе определённая ссылка открывалась через браузер, установленный по умолчанию(Опера короче у меня)


 
YURIYДата: Понедельник, 19 Октября 2009, 20:54 | Сообщение # 27
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Юзай поиск.

Code
Run("http://yandex.ru","")

И без лишних вопросов не по теме.



Вечная память Андрею Сергееву!
 
RushДата: Вторник, 20 Октября 2009, 01:59 | Сообщение # 28
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
Quote (YURIY)
Так и думал, что здесь юникод замешан, так как у него на каждый символ идёт от двух байт.

Не совсем так. :)
Здесь перевод строк, который используется в UNIX-системах. Он состоит из одного байта - 0A. А в Винде из двух - 0D0A.
 
YURIYДата: Вторник, 20 Октября 2009, 02:01 | Сообщение # 29
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Аа, спасибо, буду знать :)


Вечная память Андрею Сергееву!
 
Форум MMB » Всё о программе Multimedia Builder » Общие вопросы по MMB » Парсер (Парсер данных XML)
  • Страница 1 из 1
  • 1
Поиск: