Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Добавление атрибута в xml [D7, WinXP]


Sodom ©   (2004-06-15 19:48:00) 

Здравствуйте. Мне нужно открыть xml файл, добавить в некоторые теги аттрибут и сохранить файл. Проблема заключается в добавлении атрибута. Привожу код:

procedure TForm1.Button1Click(Sender: TObject);
procedure H(x:IXMLNode);
var i:integer;
begin
// вызывается для каждого тега
 if x.NodeName='file' then
  begin
   //  И вот тут и нужно добавить атрибут, но
        не знаю каким образом это сделать
  end;
//  далее рекурсивно проходимся по вложенным тегам
for i:=0 to x.ChildNodes.Count-1 do
  H(x.ChildNodes[i]);
end;
var i:integer;
begin
//  _XD1 это компанент TXMLDocument
 _XD1.LoadFromFile('8.xml'); // загружаю файл, не важно какой
 _XD1.Active:=true;
 for i:=0 to _XD1.DocumentElement.ChildNodes.Count-1 do
   H(_XD1.DocumentElement.ChildNodes[i]);
end;


Вопрос собственно в коментарии. Спасибо за помощь.


Тимохов   (2004-06-16 12:16:00) [1]


> ПсихЪ   (16.06.04 11:43) [3]

написать ручками за пару часов парсер хml?
не больно ти круто - там одних спецификаций xml не на один десяток страниц.
как вы говорите имхо можно делать, только если заранее знаешь какие возможности стандарта xml будут использованы в документах, котоыре придется обрабатывать.


ПсихЪ   (2004-06-16 11:43:00) [2]

Офф-топик:
Помнится, как-то, мне пришлось писать на PHP скрипт, который обрабатывает RSS, который извлекает из XML (RSS) нужную инфу или записывает. Писал полностью сам обработку XML и не увидел в этом ничего сложного. Почему бы не написать то же самое на Delphi ручками под себя? Там работы-то на пару часов. По парсингу текста в сети уже столько доков, что, наверно, каждый второй программист знает эту тему наизусть!


Sodom   (2004-06-16 11:36:00) [3]

Надо использовать как параметр в H не IXMLNode, а IDOMNode. Тогда никаких проблем не возникает. Всем спасибо.


Тимохов   (2004-06-15 19:58:00) [4]

CreateAttribute не помогает?


Наверх

Титульная страница Поиск, карта сайта Написать письмо