以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML基础 』  (http://bbs.xml.org.cn/list.asp?boardid=1)
----  我的XML不知道怎么回事,访问有问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=1&rootid=&id=83513)


--  作者:chenxsh
--  发布时间:2/9/2010 12:39:00 PM

--  我的XML不知道怎么回事,访问有问题
http://www.sspfw.cn/config/template.xml

是用这种形式生成XML文档的.不知道怎么回事.无法预览
Set rs=Server.CreateObject("adodb.recordset")
sql="SELECT * FROM test"
rs.Open sql,Conn,1,3
Set template=RecordsetToxml(rs,"","")
template.Save(Server.MapPath("/config/template.xml"))

'生成xml
Function RecordsetToxml(Recordset,row,xmlroot)
 Dim i,node,rs,j,DataArray
 If xmlroot="" Then xmlroot="xml"
 If row="" Then row="row"
 Set RecordsetToxml=Server.CreateObject("msxml2.FreeThreadedDOMDocument"&MsxmlVersion)
 RecordsetToxml.appendChild(RecordsetToxml.createElement(xmlroot))
 If Not Recordset.EOF Then
  DataArray=Recordset.GetRows(-1)
  For i=0 To UBound(DataArray,2)
   Set Node=RecordsetToxml.createNode(1,row,"")
   j=0
   For Each rs in Recordset.Fields
    node.attributes.setNamedItem(RecordsetToxml.createNode(2,LCase(rs.name),"")).text= DataArray(j,i)& ""
    j=j+1
   Next
   RecordsetToxml.documentElement.appendChild(Node)
  Next
 End If
 DataArray=Null
End Function


--  作者:Qr
--  发布时间:2/9/2010 1:54:00 PM

--  
生成的XML太复杂了,不好查错,弄个简单的试试,估计是HTML中含有些特殊字符没有正确转义。
--  作者:chenxsh
--  发布时间:2/10/2010 3:57:00 PM

--  
比如说网站http://www.sspfw.cn/

我就是将首页的html代码存放在xml中..


--  作者:chenxsh
--  发布时间:2/10/2010 5:13:00 PM

--  
我查到原因了,是XML 转义字符的原因,,比如jiameng_en_freeback_active="</body>"

而且有一个问题,我在数据库存的是<,但我通过上面的函数生成xml文件就变成了&lt;,但&又是转义字符,所以出错了这种问题怎么解决?


--  作者:Qr
--  发布时间:2/11/2010 12:02:00 AM

--  
不知道你这样做的目的,可以考虑把HTML代码添加到CDATA区段中,就不存在特殊字符转义的问题了。
--  作者:chenxsh
--  发布时间:2/11/2010 12:34:00 PM

--  
CDATA属性XML支持不?有没有相关教程
--  作者:chenxsh
--  发布时间:2/11/2010 12:50:00 PM

--  
jiameng_en_freeback_active="&lt;/body&gt;"

这段xml如果我用CDATA要怎么写?谢谢


--  作者:chenxsh
--  发布时间:2/11/2010 2:17:00 PM

--  
在XML节点的某个属性中能不能运用CDATA,比如某个属性是jiameng_en_freeback_active,我想将该属性设置成jiameng_en_freeback_active="&lt;/body&gt;"    且要运用CDATA
--  作者:Qr
--  发布时间:2/13/2010 9:53:00 AM

--  
CDATA是节点,其下文本可以是任意字符,遇特殊字符不须转义。不能用于属性。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
74.219ms