亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > XML > 正文

編程:如何生成XML數據

2024-09-05 20:54:09
字體:
來源:轉載
供稿:網友

一,必須弄清楚最終需要的是什么

我們通過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>

有關FSO的操作參看

http://www.cnbruce.com/blog/showlog.aspcat_id=26&log_id=440

如果按照生成動態的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文件通過Javascript、XMLDOM來解析XML,同時也易于數據的保留,而動態文檔上的動態XML數據則沒有這樣有點。不過,在如今動態文檔無處不在用的時代,似乎這個優勢對于一些應用來說是無甚影響,甚至來說,動態文檔的XML數據流反而更具優勢:更及時、更動態。

四,生成XML數據就是這樣行了嗎?

無論是通過生成具體的XML文件,還是動態的XML數據流,只要按照XML的格式輸出相關XML節點和值就可以了,這樣看來XML似乎很簡單。但這并沒有真正接觸到XML的操作。在我們看來,這些XML無非就是一些成對的標簽和相關字符組成的數據記錄,毫無生命力可言。然而事實上,通過XMLDOM來操作XML則顯示了XML的絕對優勢(這點在生成XML時優勢不明顯,卻在添加、刪除XML節點時體驗無限)。

使用XMLDOM創建XML文檔,可使用Save方法生成XML文檔,使用createElement方法創建XML元素、createNode創建節點,其實對于XML中的任何標簽的創建都可以任意選擇其中的一種,不過一般使用createElement創建頂層(根)元素,使用createNode創建子節點(元素),當然createElement和createNode的使用方法也是不同。


<%

Set objXMLdoc = CreateObject("Microsoft.XMLDOM")

Set world=objXMLdoc.createElement("世界")

objXMLdoc.appendChild(world)

Set hello=objXMLdoc.createNode("element", "你好", "")

hello.Text = "hello,world"

objXMLdoc.documentElement.appendChild(hello)

objXMLdoc.Save Server.MapPath("test2.xml")

Set objXMLdoc = Nothing

%>

CreateObject("Microsoft.XMLDOM") 聲明使用XMLDOM對象

  在元素或節點被建立(createElement、createNode)時,其并沒有加到文件樹中,若要將節點加到文件樹中,則需要插入,如appendChild。
xmlDocument.createNode(type, name, nameSpaceURI) 表示建立一個指定型態、名稱,及命名空間的新節點

type 用來確認要被建立的節點型態,name 是一個字符串來確認新節點的名稱,命名空間的前綴則是選擇性的。nameSpaceURI 是一個定義命名空間URI 的字符串。如果前綴被包含在名稱參數中,此節點會在nameSpaceURI 的內文中以指定的前綴建立。如果不包含前綴,指定的命名空間會被視為預設的命名空間。

objXMLdoc.createNode("element", "你好", "") 等同于 objXMLdoc.createElement("你好")

4,objXMLdoc.documentElement.appendChild(hello)其實就是XML文檔根元素下建立節點

在本例中等同于 world.appendChild(hello),world為本例中的節點名,以此類推。

所以可以這樣來寫:

<%

Set objXMLdoc = CreateObject("Microsoft.XMLDOM")

Set world=objXMLdoc.createElement("世界")

objXMLdoc.appendChild(world)

Set hello=objXMLdoc.createElement("你好")

hello.Text = "hello,world"

world.appendChild(hello)

objXMLdoc.Save Server.MapPath("test2.xml")

Set objXMLdoc = Nothing

%>

需要注意的是,通過XMLDOM生成的XML文件都是UTF-8格式的,這對我們所有應用程序文件的UTF-8化作了很好的推介。

總結

生成XML數據,可以使用FSO,如FSO被禁用,可使用XMLDOM,當然還可以直接使用動態文檔。不過如果融會貫通地掌握XML的操作,XMLDOM操作是必須的。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
奇米4444一区二区三区| 欧美视频专区一二在线观看| 亚洲成色777777在线观看影院| 日韩中文字幕精品| 欧美贵妇videos办公室| 国产精品夜色7777狼人| 日本一欧美一欧美一亚洲视频| 高清亚洲成在人网站天堂| 国产精品私拍pans大尺度在线| 午夜精品一区二区三区在线视| 91中文精品字幕在线视频| 亚洲2020天天堂在线观看| 日本亚洲欧美三级| 日韩av免费观影| 亚洲黄色av网站| 国内伊人久久久久久网站视频| 色999日韩欧美国产| 欧美日韩高清在线观看| 国产精品午夜一区二区欲梦| 精品香蕉一区二区三区| 色悠悠国产精品| 亚洲白拍色综合图区| 欧美裸体xxxx| 国产福利精品在线| 精品国产一区二区三区久久狼5月| 亚洲成人xxx| 日本精品久久久久久久| 丝袜美腿亚洲一区二区| 91精品国产91久久久久久最新| 欧美高清在线视频观看不卡| 久久久国产精品免费| 亚洲老司机av| 亚洲国产精品国自产拍av秋霞| 国产日韩欧美一二三区| 欧美极品欧美精品欧美视频| 精品国产一区二区三区久久久狼| 欧美日韩国产一区二区三区| 欧美在线性视频| 欧美一级淫片aaaaaaa视频| 成人www视频在线观看| 精品爽片免费看久久| 国产精品爱久久久久久久| 亚洲福利在线观看| 欧美野外猛男的大粗鳮| 一区二区三区 在线观看视| 美日韩精品免费视频| 亚洲视频网站在线观看| 亚洲色图25p| 国产精品欧美风情| 亚洲第一精品久久忘忧草社区| 亚洲深夜福利网站| 国产精品高潮呻吟久久av野狼| 欧美老妇交乱视频| 久久久久久久久久久91| 日韩高清电影免费观看完整版| 91免费视频国产| 美女福利视频一区| 欧洲精品久久久| 国产欧洲精品视频| 日韩欧美第一页| 国产精品夜色7777狼人| 国产精品福利小视频| 欧洲亚洲免费视频| 日本精品视频在线播放| 久久777国产线看观看精品| 日韩电影中文 亚洲精品乱码| 亚洲欧美日韩一区二区在线| 亚洲人成自拍网站| 欧美精品性视频| 日韩成人中文字幕在线观看| 久99九色视频在线观看| 久久91精品国产91久久跳| 国产精品ⅴa在线观看h| 午夜精品福利在线观看| 亚洲一区二区三区乱码aⅴ| 午夜精品久久17c| 久久影视电视剧免费网站| 欧美性极品xxxx做受| 久久综合免费视频| 国产亚洲视频中文字幕视频| 亚洲护士老师的毛茸茸最新章节| 欧美国产日产韩国视频| 18一19gay欧美视频网站| 日本韩国欧美精品大片卡二| 亚洲成色999久久网站| 尤物tv国产一区| 国产原创欧美精品| 亚洲最大成人网色| 亚洲欧洲偷拍精品| 久久噜噜噜精品国产亚洲综合| 日韩免费不卡av| 日韩视频在线一区| 国产欧美婷婷中文| 欧美成人免费全部观看天天性色| 欧美日韩国产一区二区| 亚洲高清福利视频| 欧美另类极品videosbestfree| 亚洲91精品在线| 久久久999国产| 精品视频在线导航| 亚洲日韩中文字幕在线播放| 亚洲欧洲免费视频| 久久亚洲国产成人| 久久久国产精品亚洲一区| 69av视频在线播放| 欧美激情乱人伦| 亚洲一区二区三区四区在线播放| 国产丝袜精品视频| 日本久久久a级免费| 久久亚洲国产精品| 欧美激情精品久久久久久变态| 日韩女优在线播放| 美女av一区二区三区| 国产精品久久久久久久久久久久| 国内精品在线一区| 欧美国产日韩一区二区| 97视频在线观看播放| 久久久久久久久久国产| 日韩欧美国产成人| 久久久久久噜噜噜久久久精品| 国产欧美亚洲视频| 91精品中国老女人| 国产精品视频中文字幕91| 国产精品久久久久久久9999| 日本一本a高清免费不卡| 欧美精品videossex88| 性视频1819p久久| 成人网页在线免费观看| 日韩欧美在线第一页| 欧美日本在线视频中文字字幕| 日韩在线视频线视频免费网站| 国产精品三级在线| 日韩美女视频免费看| 美女撒尿一区二区三区| 九九精品视频在线观看| 中文字幕日韩欧美在线| 富二代精品短视频| 91av在线免费观看视频| 亚洲精品在线观看www| 精品亚洲夜色av98在线观看| 久久久精品国产亚洲| 久久久精品视频成人| 伊人伊人伊人久久| 日本在线精品视频| 久久国产精品99国产精| 日韩欧美国产激情| 久久久久久一区二区三区| 国产极品精品在线观看| 51ⅴ精品国产91久久久久久| 色妞久久福利网| 亚洲人av在线影院| 亚洲综合在线播放| 国产精品稀缺呦系列在线| 欧美日韩人人澡狠狠躁视频| 国产精品欧美亚洲777777| 国产午夜精品视频免费不卡69堂| 亚洲大尺度美女在线| 国产剧情久久久久久| 亚洲欧美制服第一页| 亚洲女人天堂视频| 中文字幕亚洲激情| 91精品国产综合久久香蕉的用户体验| 91最新在线免费观看| 日韩av电影免费观看高清|