如何动态输出utf-8

伊能静 2008-04-16 10:32:15
这个:<%=addr%>
是从数据库中调出,但数据库是gb2312的,我要他输出utf-8。怎么做?
谢谢。
...全文
242 30 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
伊能静 2008-04-17
  • 打赏
  • 举报
回复
谢谢superwfei 。
wtogether ,那怎么做才正确?
wtogether 2008-04-17
  • 打赏
  • 举报
回复
转换没问题,是你自己的代码问题
<%@language="vbscript"%>
<%
response.write C4Code(addr,"GB2312","UTF-8")'这里的addr是空白字符
.....
在最后
<%=addr%>这里还是GBK
文盲老顾 2008-04-17
  • 打赏
  • 举报
回复
貌似我也没办法了,不过我改了下部分内容,可以将输出结果以 urlEnCode 编码后的结果输出,然后使用一下 ajax 取得编码后的内容。。。比较麻烦

修改后的代码如下

http://x-bs.com/test.rar

修正内容

Private Function GetStr()
Dim c
GetStr = ""
Do While (True)
c = AscB(Stream.Read(1))
If (c = 0) Then Exit Do

'如果是双字节,就进行高字节在结合低字节合成一个字符
If c > 127 Then
If Stream.EOS Then Exit Do
GetStr = GetStr & "%" & Hex(C) & "%" & Hex(AscB(Stream.Read(1))) ' <-- 修改后的内容
' GetStr = GetStr & Chr(AscW(ChrB(AscB(Stream.Read(1))) & ChrB(C))) ' <-- 修改前的内容
Else
GetStr = GetStr & Chr(c)
End If
Loop
End Function
chinastorm 2008-04-17
  • 打赏
  • 举报
回复
关注!
伊能静 2008-04-17
  • 打赏
  • 举报
回复
还是不行。555。

QQWry.Dat 在这里下载:
http://update.cz88.net/soft/qqwry.rar

麻烦高手看看。难道真的没任何办法?
文盲老顾 2008-04-17
  • 打赏
  • 举报
回复
http://www2.zhuatu.com/lover/QQWry.Dat 404 file not found

你在输出的时候加编码函数

<%=addr%>

==>

<%=C4Code(addr,"GB2312","UTF-8")%>

try this
qinqinhao 2008-04-17
  • 打赏
  • 举报
回复
wtogether 2008-04-17
  • 打赏
  • 举报
回复
已经测试了你的代码,只要在代码前加上
Response.Charset = "UTF-8"
就可以显示正确
伊能静 2008-04-16
  • 打赏
  • 举报
回复
您这代码如何用?我是放在上部。还要怎么做?是不是我用错了?谢谢。
伊能静 2008-04-16
  • 打赏
  • 举报
回复
http://www2.zhuatu.com/lover/1.asp
文盲老顾 2008-04-16
  • 打赏
  • 举报
回复
把结果打上来看下
伊能静 2008-04-16
  • 打赏
  • 举报
回复
谢谢。还是不行。
页面是utf-8,<%=addr%>是从QQWry.dat这个数据库中调出,页面中其他都不是乱码,就是 <%=addr%> 这是乱码。

难道没办法?
文盲老顾 2008-04-16
  • 打赏
  • 举报
回复
<%
response.write C4Code(addr,"GB2312","UTF-8")
' 该方法未测试

' C4Code(vStr,FromCharset,ToCharset)
' 转换字符串编码
'
' #####################################################
'
' vStr 为原始字符串
' FromCharset 为原始编码
' ToCharset 为转换后编码
'
' #####################################################
'

Function C4Code(vStr,FromCharset,ToCharset)
Dim File
Set File = server.CreateObject("Adodb.Stream")
File.Charset = ToCharset
File.Mode = 3
File.Open
File.Type = 2
File.Position = 0
File.WriteText vStr
File.Position = 0
File.Charset = FromCharset
C4Code = File.ReadText
End Function
%>
伊能静 2008-04-16
  • 打赏
  • 举报
回复
其他都不是乱码,就是<%=addr%> 这是乱码。
是不是要函数转换一下?怎么做?
underone 2008-04-16
  • 打赏
  • 举报
回复
等高手
xiaojing7 2008-04-16
  • 打赏
  • 举报
回复
没办法
伊能静 2008-04-16
  • 打赏
  • 举报
回复
谢谢高手。代码很简单,就一个文件:
代码全部在这里:
http://www2.zhuatu.com/lover/2.txt
改为.asp
下面是程序需要用的数据库:
http://www2.zhuatu.com/lover/QQWry.Dat
EexeNet 2008-04-16
  • 打赏
  • 举报
回复
唉,你把文章提供出来吧,我帮你弄好它的...
伊能静 2008-04-16
  • 打赏
  • 举报
回复
也不可以。呼呼。
yyusnO 2008-04-16
  • 打赏
  • 举报
回复
<script>
var mode="zhuan";
function encode(obj,btn){
if(mode=="zhuan"){
obj.value=obj.value.replace(/[^\u0000-\u00FF]/g,function($0){return escape($0).replace(/(%u)(\w{4})/gi,"&#x$2;")});
btn.value="还原";
mode="huan";
}else{
obj.value=unescape(obj.value.replace(/&#x/g,'%u').replace(/;/g,''));
btn.value="转化";
mode="zhuan";
}
}
</script>
这个是js
加载更多回复(10)

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧