Godaddy空间动态include时出现的中文乱码问题
用于动态Include的函数如下:
'================================================
'函数名:Include
'作 用:动态Include asp代码文件
'返回值:空
'================================================
Function Include(filename)
Dim re,content,fso,f,aspStart,aspEnd
set fso=CreateObject("Scripting.FileSystemObject")
set f=fso.OpenTextFile(server.mappath(filename))
content=f.ReadAll
f.close
set f=nothing
set fso=nothing
set re=new RegExp
re.pattern="^\s*="
aspEnd=1
aspStart=inStr(aspEnd,content,"<%")+2
do while aspStart>aspEnd+1
Response.write Mid(content,aspEnd,aspStart-aspEnd-2)
aspEnd=inStr(aspStart,content,"%\>")+2
Execute(re.replace(Mid(content,aspStart,aspEnd-aspStart-2),"Response.Write "))
aspStart=inStr(aspEnd,content,"<%")+2
loop
Response.write Mid(content,aspEnd)
set re=nothing
End Function
可以在vbscript代码的任何地方进行如下调用:
Include("123.htm") '123.htm本身能正常显示
vbscript设置了CodePage="936", 其它都正常,唯有Include的调用显示出来的中文都是乱码
估计问题出在:
FileSystemObject
但不知怎么解决,试过重新以UTF8或Unicode或GB2312另存为123.htm再上传,但问题依旧