Вниз
Скачать: CL | DM;

Директива анализатора XML   Найти похожие ветки 

 
stelius ©   (2004-03-25 09:20) [0]

Мастера, нужна помощь.
Как при создании XML файла записать в него директиву анализатора:
<?xml version="1.0"?>

Пишу в 5 Delphi. С XML работаю через импортированную библиотеку типов MSXML


 
Digitman ©   (2004-03-25 09:31) [1]


> С XML работаю через импортированную библиотеку типов MSXML


поставь себе пакет компонентов JEDI
среди многих замечательных компонентов/утилит там есть TJvSimpleXMLParser, он прост, нагляден, удобен в управлении и автоматически записывает упомянутую директиву


 
stelius ©   (2004-03-25 09:37) [2]

А где его взять?


 
stelius ©   (2004-03-25 09:38) [3]

И все-таки хотелось бы знать как это реализуется в MSXML


 
Digitman ©   (2004-03-25 09:55) [4]

а ты загляни в библ-ку типов любым вьюером (например, OLEView)
ты увидишь, что каждый метод и каждое св-во каждого интерфейса там снабжен кратким комментарием


 
just me   (2004-03-25 12:29) [5]

DOMDocument.createProcessingInstruction


 
Тимохов ©   (2004-03-25 12:54) [6]

у меня это так

CLASS
FUNCTION TXml._AddProcessingInstruction(
  const aDoc: Xml.DOMDocument;
  const aNode: Xml.IXMLDOMNode;
  const aName: WideString;
  const aValue: WideString): IXMLDOMProcessingInstruction;
VAR
  kProcInstr: IXMLDOMProcessingInstruction;
BEGIN
  kProcInstr := aDoc.CreateProcessingInstruction(aName, aValue);
  aNode.AppendChild(kProcInstr);
  Result := kProcInstr;
END;

CLASS
FUNCTION TXml._AddProcessingInstruction_XML(
  const aDoc: Xml.DOMDocument;
  const aNode: Xml.IXMLDOMNode): IXMLDOMProcessingInstruction;
BEGIN
  Result := _AddProcessingInstruction(aDoc, aNode,
     "xml", "version="1.0" encoding = "UTF-8"");
END;


думаю, разберетесь


 
stelius ©   (2004-03-25 15:05) [7]

Thanks.
А как добавить к узлу attribute?


 
Тимохов ©   (2004-03-25 15:14) [8]

у меня это так

TXmlDataType = (xdtNotSet, xdtStr, xdtDate, xdtDec, xdtInt);

CLASS
FUNCTION TXml._AddTypedAttribute(
  const aDoc: Xml.DOMDocument;
  const aNode: IXMLDOMElement;
  const aName: WideString;
  const aValue: Variant;
  const aType: TXmlDataType): IXMLDOMAttribute;
CONST
  cTypeNames: array [TXmlDataType] of String =
     ("", "string", "date", "number", "int");
VAR
  kAttr: IXMLDOMAttribute;
BEGIN
  kAttr := aDoc.CreateAttribute(aName);
  if aType <> xdtNotSet then kAttr.Set_DataType(cTypeNames[aType]);
  kAttr.NodeTypedValue := aValue;
  aNode.SetAttributeNode(kAttr);
  Result := kAttr;
END;

вызов
TXml._AddTypedAttribute(kDoc, kRoot, "CurrencyName", kCurrCode);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
7-1079882951
Wiz@rd
2004-03-21 18:29
2004.04.11
Injecting library


7-1080146989
$tranger
2004-03-24 19:49
2004.04.11
HOOKs


1-1080151683
Роман
2004-03-24 21:08
2004.04.11
BMP -> массив


1-1082963644
Hint
2004-04-26 11:14
2004.04.11
TComboBox &amp; TStringGrid


7-1075732685
M@Rt
2004-02-02 17:38
2004.04.11
Определение серийного номера материнской платы




   Наверх