Имя пользователя:
Пароль:
 

Название темы: Balls, Balls and again Balls!
Показать сообщение отдельно

Пользователь


Сообщения: 75
Благодарности: 0

Профиль | Отправить PM | Цитировать


Iska, lxa85, XPEHOMETP, не хотелось бы начинать новую тему. Но просто проект связан делаю и интерфес и кодирую логику в делфи. Вопрос в следующем. Делфи изучаю ну года 4 наверное. До сегодняшнего дня все время работал на access и знать не хотел никакие xml. Но изучив логику работы с xml и ее интеграцию и простоту использования как языками web-сферы так и прикладного. Решил проект создавать на xml т.к. в дальнейшем планирую сделать сайт на основе этой базы. Да и легко использовать на хостингах. php-скриптик + xml вот тебе готовый сервер для запросов к базе данных и легкая упаковка и использование прикладными программами созданными на делфи или С++, при локальном использовании на компе пользователя. Для парсинга xml использую стандартный xmlDocument уже разобрался и с созданием и добавлением дочерних ветвей в файл. Но вот удаление не могу понять как реализовать нашел на просторах интернета на другом форуме запись об удалении дочерней ветви но постановка задачи стоит что ветвь одна, а у меня их несколько и может доходить до 100 и более. И как удалить конкретно 5 или 30 ветвь в структуре не могу найти.
xml структура файла следующая:
<?xml version="1.0" encoding="utf-8"?>
<images>
<image id="1"></image>
<image id="2"></image>
<image id="3"></image>
<image id="4"></image>
....
</images>

код для удаления одной ветви выглядит следующим образом:

var
XML: IXMLDocument;
begin
//загружаю исходный xml файл
XML := LoadXMLDocument('Example1.xml');
//вот здесь происходит удаление ветви, когда их несколько удаляется только первая, а как удалить последующие?
XML.DocumentElement.ChildNodes.Remove(XML.ChildNodes['images'].ChildNodes['image'].AttributeNodes.Nodes['1']);
//сохранение результата в измененый xml файл
XML.SaveToFile('Exmple2.xml');
end;

Отправлено: 10:24, 19-07-2013 | #7

Название темы: Balls, Balls and again Balls!