今天在本地测试Asp的时候,我发现居然中文乱码了,如下:
原因:编码的问题。
解决方法
其实,解决方法也非常的简单,以我这里为例子,我只需要在 index.asp header头部加上有背景色的代码即可!如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset="utf-8"%>
<!DOCTYPE html>
<html>
<body>
<%
="欢迎来到付杰博客:www.fujieace.com"
%>
</body>
</html>
关于“ASP设置编码”还有几个注意事项,大家可以去详细的了解一下:
1、确保你页面本身编码格式正确:例如 test.asp 中使用charset=utf-8,那么,请先确保这个文件本身就是Utf-8编码的。你可以利用记事本进行转换。同样如果使用charset=GBK,请先确保这个文件本身就是GBK编码的。
2、确认你得到的原数据(例如从数据库中得到的数据)编码方式与页面编码方式一至。
3、尝试指定IIS按什么编码读取。
<%@ codepage=65001%>UTF-8
<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=437 %>美国/加拿大英语
<%@ codepage=932 %>日文
<%@ codepage=949 %>韩文
<%@ codepage=866 %>俄文
codepage指定了IIS按什么编码读取。
例如:采用UTF-8编码,就在文件的最上面加上:<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
例如:采用GBK编码,就在文件的最上面加上:<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
4、设置asp内置对象 符号映射 和 响应content-type header的编码
如果你采用utf-8编码, 就在文章最上面加上:<% Session.CodePage=65001 Response.Charset="UTF-8" %>
如果你采用GBK编码, 就在文章最上面加上:<% Session.CodePage=936 Response.Charset="GBK" %>