您的位置:首页 > Web前端 > JavaScript

用javascript解决外部数据抓取中的乱码问题

2007-04-07 00:00 489 查看
我们一般会在两个地方用到外部数据抓取,一个是在asp中,一个是在hta中。如果外部数据是gb2312编码的,就涉及到转码的问题,但是传统的用vbs函数进行处理的方法,运算量比较大,有些特殊字符还会出错。
如果用adodb.stream控件来进行转码,就简单多了,不需要借助vbs的二进制处理函数了,同时速度快了很多。
<script>  
function loadData(sUrl){  
    var xh  
    xh=new ActiveXObject("Microsoft.XMLHTTP")  
    xh.open("GET",sUrl,false)  
    xh.send(null)  
    return gb2utf8(xh.responseBody)  
}  
function gb2utf8(sData){  
    var oStream  
    oStream=new ActiveXObject("adodb"+".stream")   
    oStream.Type=1   
    oStream.Mode=3   
    oStream.Open   
    oStream.Write(sData)  
    oStream.Position=0   
    oStream.Type=2   
    oStream.Charset="GB2312"  
    return oStream.ReadText()  
}  
</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: