asp(JavaScript)自动判断网页编码并转换的代码

网络编程 2025-03-29 17:18www.168986.cn编程入门

ASP自动判断网页编码转换指南:示例代码详解

在ASP开发中,网页编码的处理对于正确处理文本内容和用户体验至关重要。本示例代码通过JavaScript实现了自动判断网页编码并进行转换的功能。接下来,我们将对代码进行详细的解读。

`<% @LANGUAGE="JAVASCRIPT" CODEPAGE="65001" %>`

``

``

``

`JavaScript自动判断网页编码并转换`

``

``

`<%`

`// 设置服务器脚本超时时间,防止长时间等待`

`Server.ScriptTimeout=9999999;`

`// 定义发送请求的函数`

`function send_request(url){`

`var codedtext;`

`var http_request = Server.CreateObject("Microsoft.XMLHTTP");`

`http_request.Open("GET",url,false);`

`http_request.Send(null);`

`if (http_request.ReadyState == 4){`

`// 自动判断编码开始`

`var charresult = http_request.ResponseText.match(/CharSet=(\S+)\">/i);`

`if (charresult != null){ var Cset = charresult[1]; } else { Cset = "gb2312" } // 对获取不到的网站采用gb2312编码,可自行更改`

`// 自动判断编码结束`

`codedtext = bytesToBSTR(http_request.Responsebody,Cset);`

`} else { codedtext = "Error"; }`

`return(codedtext);`

`}`

`/ /定义字节转字符串函数 bytesToBSTR `

`function bytesToBSTR(body,Cset){ `

`/ /创建流对象 `

`/ var objstream = Server.CreateObject("Adodb.Stream"); `

`/ objstream.Type = 1; ` //设置流类型为二进制流

`/ objstream.Mode = 3; ` //设置流模式为读写模式

`/ objstream.Open(); ` //打开流 `

`/ objstream.Write(body); ` //写入二进制数据 `

`/ objstream.Position = 0; ` //设置流位置为起始位置

`/ objstream.Type = 2; ` //设置流类型为文本流 `

`/ objstream.Charset = Cset; ` //设置字符集编码 `

`/ bytesToBSTR = objstream.ReadText(); ` //读取文本数据 `

`/ objstream.Close; ` //关闭流 `

`/ return(bytesToBSTR); ` //返回读取的文本数据 `

`/ %>` 这段代码中定义了两个主要函数:send_request和bytesToBSTR。send_request函数用于发送HTTP请求并获取响应内容,同时自动判断网页的编码方式。如果网页声明了编码方式,则使用该编码方式;否则默认使用“gb2312”。获取的响应内容经过bytesToBSTR函数处理后,将其转换为字符串格式。如果请求过程中发生错误,则返回错误信息。通过调用send_request函数并传入URL参数,可以获取指定网页的编码转换后的内容。在示例代码中,我们调用该函数获取了"[

上一篇:jQuery中-last选择器用法实例 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by