最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP XML編程objXML.async = False第2/2頁

 更新時間:2008年10月15日 11:18:56   作者:  
XML數(shù)據(jù)組合進ASP應用程序的時候,需要做的第一件事是訪問XML文件的內容。

其它示例:
1、WEB鏈接
<HTML>
<BODY>
<%
Dim objXML, objRootElement, strLinkName, strLinkURL, strLinkTarget, sourceFile, i
sourceFile = Request.ServerVariables("APPL_PHYSICAL_PATH") & "xml\Links.xml"
set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.validateOnParse = True
objXML.async = false
objXML.load(sourceFile)
set objRootElement = objXML.documentElement
for i = 0 to objRootElement.childNodes.length-1
strLinkName = objRootElement.childNodes.item(i).text
strLinkURL = objRootElement.childNodes.item(i).getAttribute("url")
strLinkTarget = objRootElement.childNodes.item(i).getAttribute("target")
response.write("<a href=" & strLinkURL & " target=" & strLinkTarget & ">" & strLinkName & "</a><br>")
next
set objXML = nothing
%>
</BODY>
</HTML>
Links.xml
<?xml version="1.0" ?>
<relatedlinks>
<link url="default0.asp" target="_blank">Front Page 0</link>
<link url="default1.asp" target="_blank">Front Page 1</link>
<link url="default2.asp" target="_blank">Front Page 2</link>
<link url="default3.asp" target="_blank">Front Page 3</link>
</relatedlinks>
2、XML文件的生成
gen_xml.asp
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Developer Studio">
<META HTTP-EQUIV="Content-Type" content="text/html; charset=iso-8859-1">
<TITLE>Generate XML</TITLE>
</HEAD>
<BODY>
<%
Create an empty root node for the document.
Set rootNode = Server.CreateObject("AspXml.AspXml")
rootNode.Encoding = "ISO-8859-1"
rootNode.Standalone = "yes"
rootNode.Tag = "table"
for row = 1 to 10
Set rowNode = rootNode.NewChild("row","")
for col = 1 to 10
Set colNode = rowNode.NewChild("column","("&col&","&row&")")
next
next
rootNode.SaveXml(Server.MapPath("table.xml"))
Set rootNode = Nothing
%>
</BODY>
</HTML>
3、向XML文件中追加結點
addItem.asp
<%
If request.ServerVariables("REQUEST_METHOD")="POST" Then
call writeXML
Else
call showForm
End If
Sub showForm
%>
<html>
<body>
Please enter the persons contact details
<form action="addItem.asp" method="post">
Name: <input type="text" name="name"> Email: <input type="text" name="email">
<input type="submit" name="submit" value="Add">
</form>
</body>
</html>
<%
End Sub
Sub writeXML
find xml file path
Dim strFilename,strXMLFile
strFilename = "contacts.xml"
strXMLFile=server.mapPath(strFilename)
standard "create xml object" code
set oXML = server.createObject("Microsoft.XMLDOM")
oXML.async = False
check file exists
bitFileExists = oXML.load(strXMLFile)
If bitFileExists Then
tmpChildnodes = oXML.documentElement.childnodes.length - 1
intCurrentRecord = tmpChildnodes + 1
Else
create xml
oXML.appendChild(oXML.createProcessingInstruction("xml","version=""1.0"""))
oXML.appendChild(oXML.createElement("contacts"))
intCurrentRecord = 0
End If
create record
set oXMLRec = oXML.createElement("contact")
Create an id attribute
Set oAtt = oXML.createAttribute("id")
oAtt.Text = intCurrentRecord
oXMLRec.setAttributeNode oAtt
set remaining fields
name
oXMLRec.appendChild(oXML.createElement("name"))
oXMLRec.childnodes(0).text = request.form("name")
email address
oXMLRec.appendChild(oXML.createElement("email"))
oXMLRec.childnodes(1).text = request.Form("email")
date stamp
oXMLRec.appendChild(oXML.createElement("created"))
oXMLRec.childnodes(2).text = now()
write new record
oXML.documentElement.appendChild(oXMLRec.cloneNode(True))
save file
oXML.save strXMLFile
redirect to xml file
response.redirect(strFilename)
oXML = nothing
End Sub
%>
contacts.xml
<?xml version="1.0"?>
<CONTACT_INFO>
<contact id="1">
<name>bubu</name>
<email>zhou813@163.com</email>
<created>2003/04/29 9:26:51</created>
</contact>
<contact id="2">
<name>22222</name>
<email>222222222</email>
<created>2003-5-12 18:15:41</created>
</contact>
</CONTACT_INFO>
4、留言薄
<%
username=request.form("username")
if username<>"" then
fromwhere =request.form("fromwhere")
homepage =request.form("homepage")
email =request.form("email")
text =Server.URLEncode(request.form("text"))
Posttime =now()
sourceFile = "list.xml"
strSourceFile = Server.MapPath(sourceFile)
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
blnRet = objXML.load(strSourceFile)
If blnRet Then
Set objRootlist = objXML.documentElement
if objRootlist.hasChildNodes then
id = objRootlist.lastchild.firstchild.text+1
else
id=1
end if
Else
objXML.appendChild(objXML.createProcessingInstruction("xml","version=""1.0"""))
set objRootlist = objXML.createElement("NewList")
objXML.appendChild(objRootlist)
id = 1
End If
brstr=chr(13)&chr(10)&chr(9)
XMLnode=brstr&"<list>"&brstr & _
"<id>"&id&"</id>"&brstr & _
"<username>"&username&"</username>"&brstr & _
"<fromwhere>"&fromwhere&"</fromwhere>"&brstr & _
"<Posttime>"&Posttime&"</Posttime>"&brstr & _
"<homepage>"&homepage&"</homepage>"&brstr & _
"<email>"&email&"</email>"&brstr & _
"<text>"&text&"</text>"&brstr & _
"</list>"&chr(13)
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
objXML2.loadXML(XMLnode)
set rootNewNode=objXML2.documentElement
objRootlist.appendChild(rootNewNode)
objXML.save(strSourceFile)
set objXML=nothing
set objXML2=nothing
response.redirect(strSourceFile)
end if
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
td { font-size: 9pt}
-->
</style>
</head>
<body bgcolor="#0099CC" text="#000000">
<table width="80%" border="0" cellspacing="1" cellpadding="4" align="center" bgcolor="#FFFFFF">
<form action="PostNew.asp" method="post" name="form1">
<tr bgcolor="#000000">
<td colspan="2"><font color="#FFFFFF">New Book</font></td>
</tr>
<tr bgcolor="#EFEFEF">
<td width="19%" align="right">Name:</td>
<td width="81%">
<input type="text" name="username">**
</td>
</tr>
<tr bgcolor="#EFEFEF">
<td width="19%" align="right">ComeFrom:</td>
<td width="81%">
<input type="text" name="fromwhere" value="China">
</td>
</tr>
<tr bgcolor="#EFEFEF">
<td width="19%" align="right">WebSite:</td>
<td width="81%">
<input type="text" name="homepage" value="http://">
</td>
</tr>
<tr bgcolor="#EFEFEF">
<td width="19%" align="right">Email:</td>
<td width="81%">
<input type="text" name="email">
</td>
</tr>
<tr bgcolor="#EFEFEF">
<td width="19%" align="right" valign="top">Context:</td>
<td width="81%">
<textarea name="text" cols="60" rows="10"></textarea>
</td>
</tr>
<tr bgcolor="#EFEFEF">
<td width="19%" align="right"> </td>
<td width="81%">
<input type="submit" name="Submit" value="Submit">
<input type="reset" name="Submit2" value="Reset">
</td>
</tr>
</form>
</table>
</body>
</html>
四、使用DOM生成XML總結
了解XML文檔對象模型
XML DOM包含四個主要對象:XMLDOMDocument, XMLDOMNode,XMLDOMNodeList和XMLDOMNamedNodeMap。同任何其它對象模型一樣,每個XML DOM對象有其自己的特性和方法。本文,我們將主要介紹XMLDOMDocument 和XMLDOMNode 對象。
XMLDOMDocument對象
XMLDOMDocument對象代表XML DOM層次中的頂層結點(請不要同XML文檔中的根結點混淆)。它是建立和操縱XML結構的基礎。為了創(chuàng)建XMLDOMDocument對象變量,請使用如下的CreateObject 命令:
Set objXMLdoc = CreateObject("Microsoft.XMLDOM")
表A:列出了在創(chuàng)建了XMLDOMDocument的對象后,我們可以得到的一些特性和方法。
方法 描述
CreateAttribute 創(chuàng)建新屬性
CreateCDATASection 創(chuàng)建DATA 部分結點
CreateComment 創(chuàng)建注釋結點
CreateElement 使用指定名稱創(chuàng)建元素結點
CreateEntityReference 創(chuàng)建實體參考對象
CreateNode 創(chuàng)建結點
CreateTextNode 創(chuàng)建文本結點
Load 載入已有的 XML 文檔
Save 保存XML 文檔
特性 描述
PreserveWhiteSpace 指示是否在XML文檔中顯示空格t
ResolveExternals 解析名域,DTD和外部實體索引
ValidateOnParse 指示解析器是否對文檔進行合法性檢查
DocumentElement 返回XML 文檔的根結點
設置運行選項
正如你在表A中所看到的,只有創(chuàng)建了XMLDOMDocument 對象,你才可創(chuàng)建單個的XML結點。在做這個工作之前,你還可以設置XML文檔的解析運行條件,如果你打算直接生成XML文檔到瀏覽器時,就很有用處。
運行選項可以讓你設置異步下載,提供文檔合法性檢查和保留空格,以及解析外部索引。為了防止異步下載,可設置asynch特性為False。如果打算用一行新字符代替空格,可設置PreserveWhiteSpace 特性為True。 ResolveExternals特性可防止解析引擎解析外部實體索引,文檔類型定義或者外部名域。
1、創(chuàng)建結點
XMLDOMDocument 對象提供了創(chuàng)建結點或者XMLDOMNode的兩種方法: CreateElement 和CreateNode。選擇其中哪一種方法,取決于你需要結點提供信息量的多少。當你使用CreateElement 方法時,只要提供結點名稱,如
Set objXMLroot = objXMLdoc.CreateElement("ORDER_STATUS")
當使用CreateNode 方法時,你要指定結點類型,結點名稱和相關名域。(XML名域可以讓你擇同一文檔中用同一名稱創(chuàng)建多個XML元素) 例如,如果要使用CreateNode方法,你可寫出如下代碼:
Set objXMLroot = objXMLdoc.createNode("element","ORDER_STATUS","Space1")
一旦創(chuàng)建了結點,你須把它添加進XML文檔中。這就要用AppendChild 方法,例如,繼續(xù)上面的例子,你可以寫出:
objXMLdoc.AppendChild(objXMLroot)
該語句創(chuàng)建了XML根結點。
除了AppendChild方法外,XMLDOMNode 對象也具有其它三個控制XML結點的方法: ReplaceChild, RemoveChild和InsertBefore
2、對結點的屬性賦值
一旦創(chuàng)建了結點,還要對其屬性賦值,如獨立的標識符,或者特性值。你要用到SetAttribute方法。該方法接收兩個參數(shù)— 屬性名和屬性值。例如,下列代碼創(chuàng)建了屬性名SHIPPING_DATASOURCE 和屬性值NORTH_ATLANTIC_SHIPPING:
objXMLroot.SetAttribute "SHIPPING_DATASOURCE","NORTH_ATLANTIC_SHIPPING"
此時,我們生成了一個XML文檔,SetAttributes方法創(chuàng)建了結點屬性 。
3、加入子結點
要創(chuàng)建子結點,你可以使用我們前面介紹的CreateElement或者 CreateNode 方法,然后把它們添加到合適的父母結點中。例如,假設,我們要創(chuàng)建稱為PUBLISHER_DISCLAIMER的XML結點。為了做到這一點,我們把該結點附加到文檔的根結點中,代碼如下:
Set objXMLChildTestNode = objXMLdoc.createNode("element","PUBLISHER_DISCLAIMER","")
objXMLdoc.DocumentElement.appendChild(objXMLChildTestNode)
注意:我們使用了XMLDOMDocument的 DocumentElement 特性來把新結點添加到XML文檔的根結點中,要添加子結點,你只需把它們添加到父母結點中。
4、給結點賦值
一旦創(chuàng)建完所有的結點,你將需要給它們賦值。那是XML最關鍵的步驟。要做到這點,你同平常一樣,創(chuàng)建一個結點,然后對該結點的TEXT屬性賦值。

相關文章

最新評論

丹棱县| 微博| 汕头市| 沭阳县| 高台县| 故城县| 赣榆县| 蕉岭县| 东阿县| 东至县| 阜平县| 天水市| 绿春县| 济宁市| 绥芬河市| 赣榆县| 泸西县| 平谷区| 三都| 垦利县| 田林县| 阿拉善右旗| 台东市| 罗定市| 庆阳市| 泾源县| 塘沽区| 明溪县| 石狮市| 上虞市| 广宁县| 南雄市| 响水县| 安福县| 宜丰县| 福州市| 正镶白旗| 郧西县| 鄱阳县| 抚远县| 永年县|