当前位置: 首页 > 图文教程 > 网络编程 > ASP > 使用XMLDOM在不支持FSO的服务器上

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

ASP 中的 使用XMLDOM在不支持FSO的服务器上


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 60 ::
收藏到网摘: n/a

使用XMLDOM创建HTML文件有些朋友的主机不支持FSO,但又要生成HTML文件,是不是有些为难呢?
而现今支持ASP的主机一般都采用微软OS,而这些OS一般都是win2k server及以上系统,就算不安装XML PARSER同样会支持XML parser解析
而XMLDOM也有个 .SAVE方法.通过这样我们就可以来在不FSO的主机上生成HTML文件了.
首先,说明一点.注意HTML与XML代码的规范化.
HTML
<input name=t1>
这是没有问题的,标准的写法应该是 <input name="t1">
但是如果是xml里
<input name=t1>肯定是错误的,因为XML的节点属性值要求在引号之内.
同样 <input name="t1">也是错误的,因为XML需要封闭的结点,你可以写成
<input name="t1"></input>,但 <input name="t1"></Input>也是错误的,因为XML区分大小写
对于 input 这个XML节点,它的TEXT值为空,从而可以写成 <input name="t1" />
这样就符合XML规范了.
再比如html里的<br>在XML里要写成<br></br>或<br/>
html里的image
<image src="/upload/tech/20091012/20091012011710_bd686fd640be98efaae0091fa301e613.gif">
在XML里要写 <image src="/upload/tech/20091012/20091012011710_bd686fd640be98efaae0091fa301e613.gif" />
还有特殊字符",>,<,',&,节点不允许交叉等等,先说这么多了,至于XML文档的规范化不是本文重点,请参阅相关资料.
如何用 fso 生成一个 html文件这里也就不说了.但是如果用FSO,你的意原是要生成这样的HTML文件
<html>
<head>
<title>test</title>
<body>
<p><img src="/upload/tech/20091012/20091012011710_bd686fd640be98efaae0091fa301e613.gif">
</body>
</html>
这里少写了</HEAD>,对于HTML来说,浏览器可以容忍.
但是要生成具有XML规范的文档,就必须是
<html>
<head>
<title>test</title>
</head>
<body>
<p><img src="/upload/tech/20091012/20091012011710_bd686fd640be98efaae0091fa301e613.gif" /></p>
</body>
</html>
如何将这一段XML格式化的文档存入服务器呢?
dim xmlString
xmlString="<html>" & chr(10) & "<head>" & chr(10) & "<title>test</title>" & chr(10) & "</head>" & chr(10) & "<body>" & chr(10) & "<p><img src="/upload/tech/20091012/20091012011710_bd686fd640be98efaae0091fa301e613.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到对象中.
为什么要大家将准备生成的HTML写成XML规范的的原因也在于此,因为LOADXML()方法只支持符合XML规范的文本字串
当然需要有对目录的写权限
创建HTML文件