Форум: "Основная";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];
ВнизФормирование XML-файла Найти похожие ветки
← →
zhegulov (2006-05-05 11:44) [0]Помогите разобраться. Вот такой код по созданию xml-файла:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, XMLDoc, XMLIntf, ActiveX;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
XMLfile: IXMLdocument;
pNode,iNode: IXMLNode;
implementation
{$R *.dfm}
begin
CoInitialize(nil);
XMLfile := TXMLDocument.Create(nil);
XMLfile.Active:=true;
iNode:= XMLfile.AddChild("quiz");
inode.DeclareNamespace("","sdfsf");
iNode.SetAttributeNS("dd","","123");
pNode:=xmlfile.ChildNodes.Last.AddChild("asas");
pnode.SetAttributeNS("kk","","345");
XMLfile.SaveToFile("d:\aaa.xml");
end.
Вот что получается в XML-файле:
<quiz xmlns="sdfsf" dd="123">
<asas xmlns="" kk="345"/>
</quiz>
Никак не пойму почему в элементе asas еще присутствует атрибут xmlns="" и как сделать в программе так чтобы он не формировался?
← →
Reindeer Moss Eater © (2006-05-05 11:51) [1]Нажми F1 на DeclareNamespace и внимательно прочитай справку.
← →
Плохиш © (2006-05-05 12:06) [2]
> Reindeer Moss Eater © (05.05.06 11:51) [1]
Нет, F1 на SetAttributeNS нажимать надо ;-)
← →
Reindeer Moss Eater © (2006-05-05 12:10) [3]Лучше и там и там нажимать.
← →
Плохиш © (2006-05-05 12:21) [4]Хотя, сейчас по всякому попробовал, ничего не добавляется. Видно автор что-то не договаривает.
← →
Reindeer Moss Eater © (2006-05-05 13:09) [5]Просто префикс надо непустой при DeclareNamespace
← →
zhegulov (2006-05-05 13:20) [6]В том-то и дело что не нужен префикс. Если его поставить ну хотя бы вот так:
inode.DeclareNamespace("pp","sdfsf");
то тогда понятно все будет вот так:
<quiz xmlns:pp="sdfsf" dd="123">
<asas kk="345"/>
</quiz>
Но дело в том что не нужен префикс. И не надо давать советы типа нажми F1 если знающий человек он всегда поможет конкретно.
← →
Reindeer Moss Eater © (2006-05-05 13:22) [7]Не надо F1?
Тогда жми Alt+F4 в IDE
← →
Плохиш © (2006-05-05 13:33) [8]
> Reindeer Moss Eater © (05.05.06 13:09) [5]
> Просто префикс надо непустой при DeclareNamespace
Да я, собственно, как и автор пустой давал, не помогает, всё-равно ничего не добавляет :-)
Хотя у меня DOMVendor-ом "Xerces XML" стоит.
← →
Reindeer Moss Eater © (2006-05-05 13:34) [9]А у меня MSXML
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c