如何生成XML数据
2008-09-10 12:59
一,必须弄清楚最终需要的是什么
我们通过 ASP或其他动态编程语言,最终需要的是 XML格式的数据,这点和 XML数据所在的文件载体无关,它可以是实实在在的 XML文件,比如: http://www.dw8.cn/common/dw8.xml 。也可以为 ASP文档,比如: http://www.cnbruce.com/blog/rss2.asp
他们都是 XML数据的体现,为了实现 XML数据的动态,所以需要使用到动态编程语言,比如 ASP来实现生成它。
二,如何生成动态的XML文档
如果是生成 XML文件,介于动态文档是 ASP格式的,所以必须借助FSO进行 XML文件的生成,比如:
<%
XMLfile=server.mappath("test1.XML")
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile(
XMLfile,True)
MyFile.WriteLine("<?
XML version=""1.0"" encoding=""gb2312""?>")
MyFile.WriteLine("<世界>")
MyFile.WriteLine("<你好>hello,world</你好>")
MyFile.WriteLine("</世界>")
MyFile.Close
%>
<a href="test1.
XML">查看XML文件内容</a>
如果按照生成动态的 XML数据文件来说,则是将MyFile.WriteLine的相关内容在动态文档中通过程式的手段来控制 XML节点的名称和值即可。
三,如何使用动态文档生成XML数据
那如果不是生成 XML文件,直接在动态文档上输出 XML数据呢,须声明文件的类型(即Response.ContentType)
<%Response.ContentType = "text/XML"%>
比如直接浏览如下的动态 ASP文档,在浏览器中下则显示为 XML数据树
<%
With Response
    .ContentType = "text/
XML"
    .write("<?
XML version=""1.0"" encoding=""gb2312""?>")
    .write("<世界>")
    .write("<你好>hello,world</你好>")
    .write("</世界>")
End with
%>
生成的 XML文件,其优势就是处理该 XML数据的文档可以是静态文档,比如 HTML文件通过 JavaScriptXMLDOM来解析 XML,同时也易于数据的保留,而动态文档上的动态 XML数据则没有这样有点。不过,在如今动态文档无处不在用的时代,似乎这个优势对于一些应用来说是无甚影响,甚至来说,动态文档的 XML数据流反而更具优势:更及时、更动态。