Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2008, 08:51   #1
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию XMLDocument

Как в XMLCodument создать элемент
Код:
<?xml version="1.0" encoding="windows-1251"?>
И как сделать закрывающийся элемент. Например,
Код:
<rss version="2.0">
...
</rss>
Я делал так:
Код:
XMLDocument.AddChild('rss').Attributes['version']:='2.0';
Но получается только [code]<rss version="2.0">[code]
А закрывающего тега нет.
AidarBik вне форума Ответить с цитированием
Старый 04.03.2008, 09:10   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Это не елемент. И если вы создаете новый XML то почему бы вам не указать данные для загрузки например вашу же строку
Код:
<?xml version="1.0" encoding="windows-1251"?>
а потом создавать просто елементы нужные. Для закрытия тега надо чтобы тег содержал в себе чтонить
BOBAH13 вне форума Ответить с цитированием
Старый 04.03.2008, 13:43   #3
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию

А как в этот тег добавить содержимое?
AidarBik вне форума Ответить с цитированием
Старый 04.03.2008, 14:09   #4
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию

Цитата:
Сообщение от BOBAH13 Посмотреть сообщение
Это не елемент. И если вы создаете новый XML то почему бы вам не указать данные для загрузки например вашу же строку
Код:
<?xml version="1.0" encoding="windows-1251"?>
а потом создавать просто елементы нужные.
Как?
Я попробовал
Код:
XMLDocument.XML.Text:='<?xml version="1.0" encoding="windows-1251"?>';
XMLDocument.Active:=True;
with XMLDocument.AddChild('rss') do
begin
Attributes['version']:='2.0';
Text:='';
end;
Но тогда появляется ошибка.
AidarBik вне форума Ответить с цитированием
Старый 04.03.2008, 14:47   #5
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию

Нашел как исправить. Поставил свойство DomVendor = OpenXML. Но кодировка там UTF-8. Из-за этого получается что-то типа
Код:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>Новости Aidar.3dn.ru</title><link>http://aidar.3dn.ru/</link><description>Сайт Биктимирова Айдара. Программирование. Delphi. Статьи. Компоненты. Программы.</description><language>ru</language><generator>RSS Maker 1.0</generator></channel></rss>
И еще, почему строки не переносятся?
---
Кажется проблемы с кодировкой только в Delphi. Потому что браузер все отобразил нормально.

Последний раз редактировалось AidarBik; 04.03.2008 в 14:50.
AidarBik вне форума Ответить с цитированием
Старый 04.03.2008, 15:48   #6
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию

И еще, как узнать количество элементов? Например надо узнать сколько элементов item содержится в канале
Код:
<rss>
<channel>
<item>
...
</item>
<item>
...
</item>
...
И т.д.
</channel>
</rss>
AidarBik вне форума Ответить с цитированием
Старый 04.03.2008, 15:53   #7
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Ну чтож давайте $100 и я вам покажу как это делается

лаадно шутка, вот выкладываю недавно писал ( p.s. на быструю руку для себя только ) так что разберайтесь

да и еще, на счет некоторых елементов я не уверен что верно описал структуры но просто текст и сам канал описан верно вроде.
Вложения
Тип файла: zip RSS.zip (2.0 Кб, 200 просмотров)
BOBAH13 вне форума Ответить с цитированием
Старый 05.03.2008, 20:11   #8
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию

Большое спасибо!
AidarBik вне форума Ответить с цитированием
Старый 03.02.2009, 20:08   #9
ZeitGeist7
Пользователь
 
Регистрация: 02.02.2009
Сообщений: 54
По умолчанию

BOBAH13, как пользоваться твоим модулем?
можно пример?
ZeitGeist7 вне форума Ответить с цитированием
Старый 03.02.2009, 20:16   #10
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Ммм.. кого то еще интерисует что я делаю ?
Ну как, как... создаете класс TRSSParser потом получаите данные RSS (они же XML, и соотвественно String - строка) потом у класса TRSSParser есть свойство RSS просто присваиваите и все... парсер разобъет весь RSS на элементы а там уже по названиям и так ясно что и где, если конечно хоть пару статей про RSS прочитали
BOBAH13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц