저 희 는 보통 두 곳 에서 외부 데 이 터 를 캡 처 합 니 다.하 나 는 asp 에서,하 나 는 hta 에서 캡 처 합 니 다.만약 에 외부 데이터 가 gb 2312 인 코딩 이 라면 디 코딩 문제 와 관련 되 지만 전통 적 으로 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>