ASP读取XML(带属性)的问题

yymawei 2006-07-17 11:51:51
class.xml

<?xml version="1.0" encoding="GB2312"?>
<aclass>
<bclass ClassCode="" classname="请选择"/>
<bclass ClassCode="a" classname="中国"/>
<bclass ClassCode="b" classname="欧洲"/>
<bclass ClassCode="c" classname="日本"/>
......
</aclass>

请问用ASP怎样分别读取出ClassCode和classname?

...全文
522 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yymawei 2006-07-17
  • 打赏
  • 举报
回复
有无完整代码?
BlueDestiny 2006-07-17
  • 打赏
  • 举报
回复
set node=xml.selectSingleNode(xpath)'得到节点
response.write node.getAttribute("classname")'得到属性classname
yymawei 2006-07-17
  • 打赏
  • 举报
回复
我找到了
文件一、create_xml.asp
<%
connStr="Provider=SQLOLEDB;Pwd=123;UID=sa;database=local;Data Source=192.168.0.89;Connect Timeout=30"
Set conn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.RecordSet")
conn.Open connStr
rs.Open "SELECT ID, SYMBOL FROM Portfolio",conn,3,3

Set objXMLDOM = Server.CreateObject("MSXML2.DOMDocument")
Set objXMLDOM_XSLT = server.CreateObject("MSXML2.DOMDocument")
rs.Save objXMLDOM,1
rs.Close
set rs = nothing

objXMLDOM_XSLT.load(Server.MapPath("create_xml.xsl"))
strCleanXML = objXMLDOM.transformNode(objXMLDOM_XSLT)
objXMLDOM.loadxml(strCleanXML)
set pi = objxmldom.createProcessingInstruction("xml","version='1.0' encoding='GB2312'")
call objxmldom.insertBefore(pi,objxmldom.childNodes(0))
objXMLDOM.save(server.MapPath("create_xml.xml"))
set objxmldom = nothing
set objXMLDOM_XSLT=nothing
conn.Close()
%>

文件二、create_xml.xsl
<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema">
<xsl:output omit-xml-declaration="yes"/>
<xsl:template match="/">
<xml>
<xsl:apply-templates select="/xml/rs:data/z:row"/>
</xml>
</xsl:template>
<xsl:template match="/xml/rs:data/z:row">
<row>
<xsl:apply-templates select="@*"/>
</row>
</xsl:template>
<xsl:template match="@*">
<xsl:attribute name="{name()}">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
</xsl:stylesheet>

文件三、create_xml.xml(所生成的xml文件)
<?xml version="1.0" encoding="GB2312"?>
<xml xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema">
<row ID="dgildgklq" SYMBOL="jklkl"/>
<row ID="kjks" SYMBOL="hujm"/>
<row ID="john" SYMBOL="jkk"/>
<row ID="kevin" SYMBOL="jil"/>
<row ID="jacky" SYMBOL="wizx"/>
</xml>

文件四、get_xml.asp(读取create_xml.xml中的数据)
<%
Set objxml = Server.CreateObject("MSXML.DOMDocument")
objXML.load(Server.MapPath("create_xml.xml"))
set nodeList=objxml.selectSingleNode("//xml").ChildNodes
For Each node In NodeList
set id=node.attributes.getNamedItem("ID")
set SYMBOL=node.attributes.getNamedItem("SYMBOL")
response.write id.text&","&SYMBOL.text&"<br>"
next
%>
yymawei 2006-07-17
  • 打赏
  • 举报
回复
比较急啊!

28,402

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧