Текущий архив: 2011.05.22;
Скачать: CL | DM;
Вниз
очистка IXMLDocument Найти похожие ветки
← →
cross (2011-02-10 16:19) [0]приложение загужает xml-файл. если xml-файл удалось загрузить, необходимо очистить все содержимое root-узла, если загрузить файл не удалось нужно сформировать xml-файл (добавить пустой root-узел). Как правильно сделать?
Мой вариант:
procedure TForm1.FormCreate(Sender: TObject);
var
I: Integer;
WorkXML: IXMLDOMDocument;
begin
WorkXML := CoDOMDocument.Create;
if WorkXML.load("D:\test.xml") then
with WorkXML.documentElement do
for I := childNodes.length - 1 downto 0 do
removeChild(childNodes[I])
else
WorkXML.documentElement := WorkXML.createElement("zzz");
ShowMessage(WorkXML.xml);
end;
← →
Медвежонок ХМЛ © (2011-02-10 16:25) [1]LoadXML + константа-шаблон
← →
Медвежонок ХМЛ © (2011-02-10 16:27) [2]если xml-файл удалось загрузить, необходимо очистить все содержимое root-узла, если загрузить файл не удалось нужно сформировать xml-файл (добавить пустой root-узел). Как правильно сделать?
в таком извращенном случае надо сразу грузить документ с пустым рутом (без чайлдов)
← →
cross (2011-02-10 16:29) [3]не понял, что имеете ввиду, можно подробнее объяснить, что за константа и что за шаблон.
← →
Медвежонок ХМЛ © (2011-02-10 16:30) [4]строковая константа, в которой текст документа с рутом без чайлдов.
← →
cross (2011-02-10 16:42) [5]объясню более подробно задачу:
приложение загружает xml-файл (WorkXML.load: Boolean):
1. если True:
1.1 анализ содержимого xml-файла (analyze: Boolean)
1.1.1 если True: - оставляем все как есть
1.1.2 если False: - очищаем xml-файл оставив только root-узел + формируем содержимое
2. если False
2.1 очищаем xml-файл оставив только root-узел + формируем содержимое.
Как грамотно реализовать очистку и заполнение новым сожержимым root-узла?
← →
Медвежонок ХМЛ © (2011-02-10 16:45) [6]если xml-файл удалось загрузить, необходимо очистить все содержимое root-узла, если загрузить файл не удалось нужно сформировать xml-файл (добавить пустой root-узел).
ИТОГО:
в обоих случаях у нас документ с пустым рутом без чайлдов.
зачем там что-то чистить,
если можно сделать loadxml("<?xml version="1.0"?><root/>");
← →
Dennis I. Komarov © (2011-02-10 16:50) [7]if not({1} and {1.1}) then загружаем "пустой шаблон"
← →
Медвежонок ХМЛ © (2011-02-10 16:51) [8]
//if not({1} and {1.1}) then
загружаем "пустой шаблон"
← →
cross (2011-02-10 16:55) [9]все ясно, спасибо.
последнее, что хочу уточнить, для чего в сроке указывать <?xml version="1.0"?>?, без него вроде как работает
← →
Dennis I. Komarov © (2011-02-10 16:56) [10]я понял что если xml "правильный", т.е. он внутри xml да еще и некой правильной структуры, то он его не трогает, во всех других противных - надо "типа очистить"...
← →
Dennis I. Komarov © (2011-02-10 16:57) [11]тогда если не будет, не прибегай жаловаться...
Страницы: 1 вся ветка
Текущий архив: 2011.05.22;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.008 c