XML入门笔记(二)——关于ASP网站中文乱码问题

目录

问题的发现

问题原因

原因

​常用编码

解决方法

1.UTF-8编码打开,插入如下代码:

2.GB2312编码打开,插入如下代码:


问题的发现

编写ASP代码,利用服务器端完成简历数据到 HTML 文档的转换时,运行出的网页中文乱码

 代码:

<%@LANGUAGE="VBScript" CODEPAGE="65001"%>
<%
  '定义使用的变量
  dim xmldoc,xsldoc,result
  
  '创建DOMDocument对象实例xmldoc
  '将使用xmldoc来加载需要转换的XML文档
  set  xmldoc=Server.createObject("Microsoft.XMLDOM")
  
  '设置并不同步加载XML文档
  xmldoc.async=false
  
  '加载XML文档
  xmldoc.load(Server.MapPath("code11_5.xml"))
  
  '判断加载的XML文档是否有错,有则输出错误原因
  if (xmldoc.parseError.errorCode<>0) then
    Response.write("发生错误:"+xmldoc.parseError.reason)
	Response.End
  end if
 
  '创建DOMDocument对象实例xsldoc
  '将使用xsldoc来加载转换XML文档使用的样式单
  set xsldoc=Server.createObject("Microsoft.XMLDOM")
  xsldoc.async=false
  
  '加载样式单
  xsldoc.load(Server.MapPath("code11_6.xsl"))
  
  '判断样式单中是否有错,有则输出出错原因
  if(xsldoc.parseError.errorCode<>0) then
    Response.write("发生错误:"+xsldoc.parseError.reason)
	Response.End
  end if
  
  '使用样式单转换XML文档
  result=xmldoc.transformNode(xsldoc)
  
  '输出转换结果
  Response.write(result)
 %>

使用UTF-8编码打开,乱码

问题原因

原因

网页出现乱码主要是因为以下几处声明的网页编码不一致引起的。

1、页面开头的 CODEPAGE

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

2、meta标签

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

3、文件保存时使用的编码

以HBuilder X为例,选择文件的打开编码方式:

​常用编码

MS-DOS为以下国家和语言提供字符集: 
  代码页描述 
  1258 越南语 
  1257 波罗的语 
  1256 阿拉伯语 
  1255 希伯来语 
  1254 土耳其语 
  1253 希腊语 
  1252 拉丁 1 字符 (ANSI) 
  1251 西里尔语 
  1250 中欧语言 
  950 繁体中文 
  949 朝鲜语 
  936 简体中文(默认) 
  932 日语 
  874 泰国语 
  850 多语种 (MS-DOS Latin1) 
  437 MS-DOS 美国英语 
dos指令: 
        chcp 65001 就是换成UTF-8代码页 
        chcp 936 可以换回默认的GBK 
        chcp 437 是美国英语 

解决方法

将以上三处编码统一

1.UTF-8编码打开,插入如下代码:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

2.GB2312编码打开,插入如下代码:

<%@LANGUAGE="VBScript" CODEPAGE="936"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
</head>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

差点意思的鸭鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值