asp中通过fso读取和生成UTF-8编码的txt
更新时间:2013年08月22日 23:08:39 作者:
利用fso.OpenTextFil读取UTF-8文件或者用FSO.save生成UTF-8文件时乱码解决办法生成静态页使用的方法是读取asp页面的html代码,保存为html文件,这种方法
由于动态页是utf8格式的编码,我得到它的html代码后,使用fso保存,生成html是成功了,但是不能访问,因为html的编码有问题,选择gb2312就可以正常访问了。这样不行,因为整站都是utf8格式的编码,打开这个页面,还需要选择编码才可访问,这样太麻烦了,也没有人愿意去访问,所以必须解决utf8格式编码问题。
经过一翻搜索才了发现,fso不能生成utf8格式的文件。所以要换种方法。 www.iisboy.com
又找了一会,找到一个函数,可代替fso生成文件,它使用的adodb.stream对象来生成utf8文件的,函数如下:
复制代码 代码如下:
'-------------------------------------------------
'函数名称: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 本文来自www.iisboy.com
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 IISBOY网,IISBOY.COM
使用方法:
复制代码 代码如下:
call WriteToTextFile ("../index.html","aaa","utf-8")
搞定。
相关文章
asp下通过HTTP_USER_AGENT判断用户是从手机上访问,还是电脑IE上访问
最近wap网站比较流行,我们需要判断下客户使用手机访问的还是电脑ie访问的, 好给出不同尺寸的页面,更符合用户浏览习惯,下面是核心判断代码,需要的朋友可以参考下。2011-01-01ReplaceTrim 函数之asp实现过滤掉字符中所有的tab和回车和换行的代码
ReplaceTrim 函数之asp实现过滤掉字符中所有的tab和回车和换行的代码...2007-09-09
最新评论