今天在做asp生成静态页的时候遇到这个问题
由于我生成静态页使用的方法是读取asp页面的html代码,保存为html文件,这种方法。由于动态页是utf8格式的编码,我得到它的html代码后,使用fso保存,生成html是成功了,但是打开网页全是乱码,选择gb2312就可以正常生成了。这样不行,因为整站都是utf8格式的编码,打开这个页面,还需要选择编码才可访问,这样太麻烦了,也没有人愿意去访问,所以必须解决utf8格式编码问题。
经过一翻测试采用“adodb.stream”来代替"Scripting.FileSystemObject"读取生成任何编码的网页都正常了。
函数如下:
'-------------------------------------------------
'函数名称:ReadTextFile
'作用:利用AdoDb.Stream对象来读取UTF-8格式的文本文件
'----------------------------------------------------
Function ReadFromTextFile (FileUrl,CharSet)
dim str
set stm=server.CreateObject("adodb.stream")
stm.Type=2 '以本模式读取
stm.mode=3
stm.charset=CharSet
stm.open
stm.loadfromfile server.MapPath(FileUrl)
str=stm.readtext
stm.Close
set stm=nothing
ReadFromTextFile=str
End Function
'-------------------------------------------------
'函数名称:WriteToTextFile
'作用:利用AdoDb.Stream对象来写入UTF-8格式的文本文件
'----------------------------------------------------
Sub WriteToTextFile (FileUrl,byval Str,CharSet)
set stm=server.CreateObject("adodb.stream")
stm.Type=2 '以本模式读取
stm.mode=3
stm.charset=CharSet
stm.open
stm.WriteText str
stm.SaveToFile server.MapPath(FileUrl),2
stm.flush
stm.Close
set stm=nothing
End Sub
使用方法:
call WriteToTextFile ("../index.html","aaa","utf-8")
根据自已的情况,修改一下上面两个函数,完满生成静态页面。
下一篇::从虚拟主机到VPS服务器,再到如今的ECS云服务器、区别汇总
最新文章
- 1微型B2C站点的建立
《微型B2C站点的建立》对于大多数企业来说,......
- 2百度优化之判断关键词是否犯
关键词堆砌(keywordstuffing)在网页中大......
- 3百度搜索推广匹配方式精简成
百度搜索推广匹配方式精简成3+1匹配模式了这......
- 4百度付费推广常见问题和解决
一、推广账户问题Q1.排名不错,但是点击率极......
- 5百度竞价推广出现竞价账户有
竞价推广怎么做?sem竞价推广成为企业欢迎的......