服务器上的 XML
XML 文件是类似 HTML 文件的纯文本文件。
能够通过标准的 web 服务器轻松地存储和生成 XML。
在服务器上存储 XML
XML 文件在 Internet 服务器上进行存储的方式与 HTML 文件完全相同。
请打开 Windows 记事本,并输入以下代码:
<?xml version="1.0" encoding="utf-8"?><note><from>韩梅梅</from><to>李雷</to><message>不要忘记开会!</message></note>
然后用适当的文件名,比如 "note.xml",在 web 服务器上保存这个文件。
通过 ASP 生成 XML
XML 可在不安装任何 XML 软件的情况下在服务器端生成。
如需从服务器生成 XML 响应 - 只需简单地编写以下代码并在服务器上把它保存为一个 ASP 文件:
<%response.ContentType="text/xml"response.Write("<?xml version='1.0' encoding='utf-8'?>")response.Write("<note>")response.Write("<from>韩梅梅</from>")response.Write("<to>李雷</to>")response.Write("<message>不要忘记开会!</message>")response.Write("</note>")%>
请注意,此响应的内容类型必须设置为 "text/xml"。
查看这个 ASP 文件如何从服务器返回
如果您还不懂如何编写 ASP,请访问本站的《ASP 教程》。
通过 ASP.Net 生成 XML
XML 可在不安装任何 XML 软件的情况下在服务器端生成。
可以新建一个 ASPX 文件,并在它的后台 aspx.cs 文件中写入以下代码:
protected void Page_Load(object sender, EventArgs e){Response.ContentType = "text/xml";Response.Write("<?xml version='1.0' encoding='utf-8'?>");Response.Write("<note>");Response.Write("<from>韩梅梅</from>");Response.Write("<to>李雷</to>");Response.Write("<message>不要忘记开会!</message>");Response.Write("</note>");Response.End();}
请注意,此响应的内容类型必须设置为 "text/xml"。
如果您还不懂如何编写 ASP.Net,请访问本站的《ASP.Net 教程》。
通过 PHP 生成 XML
如需使用 PHP 在服务器上生成 XML 响应,请使用下面的代码:
<?phpheader("Content-type:text/xml");echo "<?xml version='1.0' encoding='utf-8'?>";echo "<note>";echo "<from>韩梅梅</from>";echo "<to>李雷</to>";echo "<message>不要忘记开会!</message>";echo "</note>";?>
请注意,响应头部的内容类型必须设置为 "text/xml"。
如果您需要学习 PHP,请访问本站的《PHP 教程》。
从数据库获取 XML
XML 可在不安装任何 XML 软件的情况下从数据库生成。如需从服务器生成 XML 数据库响应,只需简单地编写以下代码,并把它在服务器上保存为 ASP 文件:
<%response.ContentType = "text/xml"set conn=Server.CreateObject("ADODB.Connection")conn.provider="Microsoft.Jet.OLEDB.4.0;"conn.open server.mappath("/db/database.mdb")sql="select FirstName,LastName from Persons"set rs=Conn.Execute(sql)rs.MoveFirst()response.write("<?xml version='1.0' encoding='utf-8'?>")response.write("<Customers>")while (not rs.EOF)response.write("<Person>")response.write("<FirstName>" & rs("FirstName") & "</FirstName>")response.write("<LastName>" & rs("LastName") & "</LastName>")response.write("</Person>")rs.MoveNext()wendrs.close()conn.close()response.write("</Customers>")%>
查看以上 ASP 代码的实际数据库输出案例
上面的例子使用了带有 ADO 的 ASP。
如果您需要学习 ADO,请访问 本站 的《ADO 教程》。
在服务器上通过 XSLT 转换 XML
下面的 ASP 代码在服务器上把 XML 文件转换为 XHTML:
<%'Load XMLset xml = Server.CreateObject("Microsoft.XMLDOM")xml.async = falsexml.load(Server.MapPath("simple.xml"))'Load XSLset xsl = Server.CreateObject("Microsoft.XMLDOM")xsl.async = falsexsl.load(Server.MapPath("simple.xsl"))'Transform fileResponse.Write(xml.transformNode(xsl))%>
例子解释
第一个代码块创建微软 XML 解析器的实例 (XMLDOM),并把 XML 文件载入内存
第二个代码块创建解析器的另一个实例,并把 XSL 文件载入内存
最后一个代码使用 XSL 文档来转换 XML 文档,并把结果以 XHTML 发送到您的浏览器,完成。
通过 ASP.Net 把 XML 保存为文件
这个 ASP.Net 实例会创建一个简单的 XML 文档,并把该文档保存到服务器上:
protected void Page_Load(object sender, EventArgs e){string text = "<note>";text = text + "<to>李雷</to>";text = text + "<from>韩梅梅</from>";text = text + "<heading>提醒</heading>";text = text + "<body>不要忘记开会!</body>";text = text + "</note>";//载入xml文档XmlDocument xmlDocument = new XmlDocument();xmlDocument.LoadXml(text);xmlDocument.Save("test.xml");}