使用XMLDOM在不支持FSO的服務(wù)器上
而現(xiàn)今支持ASP的主機(jī)一般都采用微軟OS,而這些OS一般都是win2k server及以上系統(tǒng),就算不安裝XML PARSER同樣會(huì)支持XML parser解析
而XMLDOM也有個(gè) .SAVE方法.通過(guò)這樣我們就可以來(lái)在不FSO的主機(jī)上生成HTML文件了.
首先,說(shuō)明一點(diǎn).注意HTML與XML代碼的規(guī)范化.
HTML
<input name=t1>
這是沒(méi)有問(wèn)題的,標(biāo)準(zhǔn)的寫(xiě)法應(yīng)該是 <input name="t1">
但是如果是xml里
<input name=t1>肯定是錯(cuò)誤的,因?yàn)閄ML的節(jié)點(diǎn)屬性值要求在引號(hào)之內(nèi).
同樣 <input name="t1">也是錯(cuò)誤的,因?yàn)閄ML需要封閉的結(jié)點(diǎn),你可以寫(xiě)成
<input name="t1"></input>,但 <input name="t1"></Input>也是錯(cuò)誤的,因?yàn)閄ML區(qū)分大小寫(xiě)
對(duì)于 input 這個(gè)XML節(jié)點(diǎn),它的TEXT值為空,從而可以寫(xiě)成 <input name="t1" />
這樣就符合XML規(guī)范了.
再比如html里的<br>在XML里要寫(xiě)成<br></br>或<br/>
html里的image
<image src="test.gif">
在XML里要寫(xiě) <image src="test.gif" />
還有特殊字符",>,<,',&,節(jié)點(diǎn)不允許交叉等等,先說(shuō)這么多了,至于XML文檔的規(guī)范化不是本文重點(diǎn),請(qǐng)參閱相關(guān)資料.
如何用 fso 生成一個(gè) html文件這里也就不說(shuō)了.但是如果用FSO,你的意原是要生成這樣的HTML文件
<html>
<head>
<title>test</title>
<body>
<p><img src="test.gif">
</body>
</html>
這里少寫(xiě)了</HEAD>,對(duì)于HTML來(lái)說(shuō),瀏覽器可以容忍.
但是要生成具有XML規(guī)范的文檔,就必須是
<html>
<head>
<title>test</title>
</head>
<body>
<p><img src="test.gif" /></p>
</body>
</html>
如何將這一段XML格式化的文檔存入服務(wù)器呢?
dim xmlString
xmlString="<html>" & chr(10) & "<head>" & chr(10) & "<title>test</title>" & chr(10) & "</head>" & chr(10) & "<body>" & chr(10) & "<p><img src="test.gif" /></p>" & chr(10) & "</body>" & chr(10) & "</html>"
dim xmlDoc
set xmlDoc = server.createObject("Msxml2.DOMDocument")
xmlDoc.loadXml(xmlString)
xmlDoc.save(server.mappath("test.htm"))
set xmlDoc=nothing
這里用到了 xmlDOM.loadXml() 方法,它加載一段XML DOCUMENT到對(duì)象中.
為什么要大家將準(zhǔn)備生成的HTML寫(xiě)成XML規(guī)范的的原因也在于此,因?yàn)長(zhǎng)OADXML()方法只支持符合XML規(guī)范的文本字串
當(dāng)然需要有對(duì)目錄的寫(xiě)權(quán)限
創(chuàng)建HTML文件
相關(guān)文章
用ASP實(shí)現(xiàn)遠(yuǎn)程將文件批量改名的代碼
用ASP實(shí)現(xiàn)遠(yuǎn)程將文件批量改名的代碼...2007-09-09asp 驗(yàn)證用戶(hù)名是否包含有非常字符的函數(shù)
asp 驗(yàn)證用戶(hù)名是否包含有非常字符的函數(shù)...2007-08-08ASP生成隨機(jī)數(shù) ASP生成不重復(fù)隨機(jī)數(shù)
這篇文章主要介紹了ASP生成不重復(fù)隨機(jī)數(shù)的方法,需要的朋友可以參考下2014-05-05ADO存取數(shù)據(jù)庫(kù)時(shí)如何分頁(yè)顯示
這篇文章主要介紹了ADO存取數(shù)據(jù)庫(kù)時(shí)如何分頁(yè)顯示,需要的朋友可以參考下2015-10-10啟動(dòng)iis出現(xiàn)發(fā)生意外0x8ffe2740的解決方法
微軟的解釋?zhuān)喝绻到y(tǒng)上存在端口沖突,則可能發(fā)生此行為。2009-06-0664位win7的IIS7下asp與access的連接問(wèn)題
運(yùn)行asp是提示Microsoft OLE DB Provider for ODBC Drivers (0x80004005)[Microsoft][ODBC Microsoft Access Driver] 找不到文件 '(未知的)'。2009-12-12asp實(shí)現(xiàn)獲取MSSQL數(shù)據(jù)庫(kù)表指定條件行數(shù)的函數(shù)
這篇文章主要介紹了asp實(shí)現(xiàn)獲取MSSQL數(shù)據(jù)庫(kù)表指定條件行數(shù)的函數(shù)的的相關(guān)資料,需要的朋友可以參考下2015-03-03asp最簡(jiǎn)單最實(shí)用的計(jì)數(shù)器
asp最簡(jiǎn)單最實(shí)用的計(jì)數(shù)器...2007-09-09