% @language="jscript"%> % //使用FSO生成 var fso=Server.CreateObject("scripting.filesystemobject") fso.CreateTextFile(Server.Mappath("./")+"/test1.xml"); // 创建文件。 f = fso.GetFile(Server.Mappath("./")+"/test1.xml"); ts = f.OpenAsTextStream(2,-2); ts.Write( "root>name>"+escape("中国").replace(/%u(\w{4})/g,function($0,$1){return "#"+(("0x"+$1)-0).toString(10)+";"})+"/name>/root>" ); ts.Close();
%> % //使用adodb.strea生成 var objStream = Server.CreateObject("ADODB.Stream") with(objStream) { Type=2; Mode=3; Open(); Charset="utf-8"; Position = objStream.Size WriteText="root>name>"+escape("中国").replace(/%u(\w{4})/g,function($0,$1){return "#"+(("0x"+$1)-0).toString(10)+";"})+"/name>/root>"; SaveToFile(Server.mappath("test2.xml"),2) Close() } var objStream = null; %> % lt;-- //使用microsoft.dom生成 var doc = new ActiveXObject("Msxml2.DOMDocument"); //ie5.5+,CreateObject("Microsoft.XMLDOM") //加载文档 //doc.load("test3.xml");
//创建文件头 var p = doc.createProcessingInstruction("xml","version='1.0' encoding='utf-8'"); //添加文件头 doc.appendChild(p); //用于直接加载时获得根接点 //var root = doc.documentElement;
//两种方式创建根接点 // var root = doc.createElement("root"); var root = doc.createNode(1,"root",""); //创建子接点 var n = doc.createNode(1,"name",""); //指定子接点文本 n.appendChild(doc.createTextNode(escape("中国").replace(/%u(\w{4})/g,function($0,$1){return "#"+(("0x"+$1)-0).toString(10)+";"}))); //添加子接点 root.appendChild(n); //复制接点 //创建数据段 var c = doc.createCDATASection("this is a cdata"); c.text = "hi,cdata"; //添加数据段 root.appendChild(c); //添加根接点 doc.appendChild(root); //XML保存(需要在服务端,客户端用FSO) doc.save(Server.MapPath("./")+"/test3.xml"); //-->