当前位置: 网学 > 编程文档 > ASP > 正文

asp 读取 utf-8格式文档并生成utf-8格式文档的乱码问题

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/06/16

网学网为需要ASP的朋友们搜集整理了asp 读取 utf-8格式文档并生成utf-8格式文档的乱码问题相关资料,希望对各位网友有所帮助!

今天在对搜索吧的程序进行utf-8修正时,发现生成的utf-8格式文档存在着乱码,原来文件

create_html.asp代码如下:

复制代码 代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
set objrs=server.createObject("Scripting.FileSystemObject")
conn=server.mappath("example.xml")
set Stream=objrs.opentextfile(conn,1,true,-2)
content=stream.readall
Response.Write(content)
stream.close
%>

这段代码要实现的功能是:从example.xml(utf-8格式)中读取文字包括中文,然后输出,但是每次输出却都是乱码,这个问题着实困扰了我很久,后来还是在经典论坛“小韩”“萧萧小雨 ”的帮助下解决了,真是感谢他们了。

或许我一开始就是错误的,现在正确的代码修改后如下,用了“萧萧小雨”给的代码,包括了用读取的内容生成新的utf-8格式文档。详细代码如下:

复制代码 代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<% Response.CodePage=65001%>
<% Response.Charset="UTF-8" %>
<%
''申明变量
dim read_path,write_paht,content
''----读取文件内容------------------------
Function ReadTextFile(filePath,CharSet)
dim stm
set stm=Server.CreateObject("adodb.stream")
stm.Type=1 ''adTypeBinary,按二进制数据读入
stm.Mode=3 ''adModeReadWrite ,这里只能用3用其他会出错
stm.Open
stm.LoadFromFile filePath
stm.Position=0 ''把指针移回起点
stm.Type=2 ''文本数据
stm.Charset=CharSet
ReadTextFile = stm.ReadText
stm.Close
set stm=nothing
End Function

''----写入文件------------------------
Sub WriteTextFile(filePath,fileContent,CharSet)
dim stm
set stm=Server.CreateObject("adodb.stream")
stm.Type=2 ''adTypeText,文本数据
stm.Mode=3 ''adModeReadWrite,读取写入,此参数用2则报错
stm.Charset=CharSet
stm.Open
stm.WriteText fileContent
stm.SaveToFile filePath,2 ''adSaveCreateOverWrite,文件存在则覆盖
stm.Flush
stm.Close
set stm=nothing
End Sub
''要读取的文件路径
read_path = Server.MapPath("example.xml")
''要写入的文件路径
write_path = Server.MapPath("example.asp")
''读取的文件内容
content = ReadTextFile(read_path,"utf-8")
''输出读取的文件
Response.Write(content)
''开始写入
call WriteTextFile(write_path,content,"utf-8")
%>


这段代码相当实用,对于生成utf-8格式静态页十分有用,一些必要的解释我也注明了,需要注意的是:

复制代码 代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<% Response.CodePage=65001%>
<% Response.Charset="UTF-8" %>
你的页面不要忘记这几行代码了,否则你读取后输出的内容是乱码。

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号