首先创建XML文本并添加节点及属性值。然后用下面语句格式化XML文本并赋给Memo.
Memo1.Lines.Text:=FormatXMLData(XMLDocument2.XML.Text));
问:1.当为XML文本节点加中文值时,XML文本对应值会乱码(即XML加中文节点值会乱码).
2.FormatXMLData(XMLDocument2.XML.Text))会出错,提示Requird white space was missing.
请问如何解决?
Memo1.Lines.Text:=FormatXMLData(XMLDocument2.XML.Text));
问:1.当为XML文本节点加中文值时,XML文本对应值会乱码(即XML加中文节点值会乱码).
2.FormatXMLData(XMLDocument2.XML.Text))会出错,提示Requird white space was missing.
请问如何解决?
如:
vXMLAtt[vIndex] := aXMLDoc.createAttribute(NodeAttName[vIndex]);
vXMLAtt[vIndex].nodevalue := NodeAttvalue[vIndex];
vXMLNode.attributes.setNamedItem(vXMLAtt[vIndex]);
procedure AddAttr(iNode:IDOMNode;Name,value:widestring);
var iAttr:IDOMNode;
begin
iAttr:=iNode.ownerDocument.createAttribute(name);
iAttr.nodeValue:=Value;
iNode.attributes.setNamedItem(iAttr);
end;
XMLDocument2.XML.Text会有乱码且不能运行Memo1.Lines.Text:=FormatXMLData(XMLDocument2.XML.Text));
Encoding="gb2312"这是什么意思?
你问问 ExploiterSoft(匆匆) ,其实我XML不是很懂
钦佩!!!
<?xml version="1.0" encoding="GB2312"?>就是字符集的问题
但改为encoding="GB2312"时编释出错,如下语句:
xmlDoc.appendChild(xmlDoc.createProcessingInstruction('xml','version="1.0" encoding="GB2312"'));
请问是为什么?该如何才能支持中文字符?
XMLDoc.Encoding := 'gb2312';