FSO,Adodb.Stream与网页utf-8编码

这两天在更新网站相册的时候,遇到了网页编码的问题.整个网站都是采用utf-8编码,但是相册是后来客,原本使用的相册分类页面是gb2312的,所以相册的分类在显示的时候就成了乱码,用英文虽然可以,但是并不是所有的人都喜欢英文,所以这个问题必需得解决.仔细琢磨了一番,问题就在生成网页文件时使用的方法,FSO不能设置编码的格式,搜遍了整个脚本帮助文档也没有答案,唉,只能用adodb.stream了,这组件有一个charset属性值,可以指定生成页面使用utf-8或者是gb2312,这下问题解决了.现在把代码帖出来,希望对大家有帮助.

'————————————————-
'函数名称:ReadFile
'作用:利用AdoDb.Stream对象来读取UTF-8格式的文本文件
'—————————————————-
function ReadFile(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
'————————————————-
'函数名称:WriteToFile
'作用:利用AdoDb.Stream对象来写入UTF-8格式的文本文件
'参数:FileUrl-文件相对路径;Str-文件内容;CharSet-编码格式(utf-8,gb2312…..)
'—————————————————-
function WriteToFile (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 function

Leave a Comment

Your email address will not be published.

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据