解决方法:ASP读取数据库中的中文数据出现乱码的问题
相信有许多ASP编程爱好者都碰到过这样的问题,在本机上测试的时候,当遇到与数据库交互时,数据库中的中文会变成乱码显示出来,而英文则不会。刚开始我的解决方法是新建一个该站点的虚拟目录,不过这只是治标不治本的办法,问题随时都会再出现,我们在享受编程带来的乐趣时当然是不能容忍这样的事情来打扰啦~~~,通过在网上查找原因,终于找到了根本的解决方法。
我上面不是说中文会出现乱码而英文不会吗?第一就应该猜想是不是编码不正确的原因!ASP默认的内部编码是Unicode,当页面没有指定的时候则有时候会出现乱码的问题(为什么是有时候我也觉得很奇怪,希望高手在评论栏中解释一下),于是解决方法就是:在连接数据库conn.asp文件中添加<%@ codepage=936%>,就可以正常显示中文。
PS:
<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=65001%>UTF-8797000024
codepage指定了IIS按什么编码读取传递过来的串串(表单提交,地址栏传递等)。
也指定了所有文本变量从Unicode转换到的编码,
也就指定了从数据库取出的数据从Unicode转换到的编码。