Microsoft MVP성태의 닷넷 이야기
Microsoft.XMLHTTP 개체로 XML 이 아닌 다른 데이터 가져오기 [링크 복사], [링크+제목 복사],
조회: 11107
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

보통 Microsoft.XMLHTTP 로 정형화된 XML 텍스트가 아니고서는 결과를 "깨진" 텍스트로 받게 됩니다.
그렇다고... 실제로 데이터가 엉뚱하게 변환되었을 리는 없을 테고.... 그냥 2진 데이터였겠죠.
 
아래의 코드에서 보면, 이진데이터를 아스키 코드로 변환해주는 VBScript 함수를 볼 수 있습니다.
 
그걸로, XMLHTTP::responseBody 속성을 해석해 주면,
정형화되지 않은 일반 텍스트 ( 한글포함 ) 문서까지도 정상적으로 반환받을 수 있습니다.
 
------ 뉴스그룹 보다가 퍼옴 ------
 


<html>
 
<head>
 
<script language=jscript>
function window.onload()
{
 var httpReq = new ActiveXObject( "Microsoft.XMLHTTP" );
 httpReq.open( "GET", "
http://webdic.ybmsisa.com/dic_search.asp", false );
 httpReq.send();
 
 alert( httpReq.responseBody );     // 여기서는 텍스트가 깨진체로 보여지지만.
 var text = BinDecode( httpReq.responseBody ); 
 alert( text );  // 여기서는 일반 ascii 텍스트로 번역되어 정상적으로 출력

}
</script>
 

<script language="vbscript">
'-----------------------------------------
' BinDecode (바이너리 -> 아스키 변환)
' mongmong - 2003. 2
'-----------------------------------------
 Public Function BinDecode(byVal binData)
  Dim i, byteChr, strV
  For i = 1 to LenB(binData)
   byteChr = AscB(MidB(binData,i,2))
   If byteChr > 127 Then
    i = i + 1
    strV = strV & Chr("&H" & Hex(byteChr) & Hex(AscB(MidB(binData,i,2))))
   Else
    strV = strV & Chr(byteChr)
   End if
  Next
  BinDecode = strV
 End Function
</script>
 

</head>
 
<body>
<FONT face="굴림"></FONT>
</body>
 
</html>







[최초 등록일: ]
[최종 수정일: 1/26/2004]


비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  9  10  11  12  [13]  14  15  ...
NoWriterDateCnt.TitleFile(s)
875정성태11/9/200710360.NET : 66. 한 눈으로 확인하는 .NET 데이터 액세스 계층
874정성태11/6/200711415Debug : 30. OpenFileDialog 사용시 메모리 사용이 급격하게 올라가는 문제
873정성태11/6/200710484Debug : 29. WinDBG - 명령어 !IToldYouSo
872정성태11/3/200710591Debug : 28. Debugger Visualizer - DynamicMethod / MethodInfo [1]
871정성태10/31/200710804TFS : 141. VS.NET 2008 - 개선된 WorkItem 기능
870정성태10/31/200710479TFS : 140. TFS to TFS Migration Tool
869정성태10/31/200710619.NET : 65. ASP.NET 을 어셈블리 언어로.
868정성태10/30/200710853.NET 3.0 : 23. 카드 스페이스 - SSL 없이도 구현가능.
867정성태10/30/200710743.NET : 64. CAB(Composite Application Block) 에 접근하고 싶으세요?
866정성태10/28/200710689개발 환경 구성: 115. VPC 를 이용한 AD 네트워크 구성
865정성태10/27/200710847.NET : 63. Singleton 패턴 구현
864정성태10/23/200710859TFS : 139. 단위 테스트를 MTA로 실행하도록 설정 [1]
863정성태10/20/200710615VisualNDepend
862정성태10/20/200710120.NET : 62. CAB 성능 향상 팁
861정성태10/20/200710501Debug : 27. SOS 를 이용하여 .NET Finalizer 디버깅
860정성태10/18/200710495TFS : 138. 팀 규모에 따른 물리 서버의 용량
859정성태10/16/200711415개발 환경 구성: 114. Eric Gunnerson 의 WiX 관련 포스트들 [3]
858정성태10/16/200710713.NET : 61. 메서드 안에서 정의된 블록 내부의 변수에 대한 범위
857정성태10/9/200710352TFS : 137. 특정 버전의 소스로 팀 빌드하는 방법
856정성태10/8/200711736.NET 3.5 : 32. ReaderWriterLock 과 ReaderWriterLockSlim 의 성능 비교.
855정성태10/5/200710481개발 환경 구성: 113. Virtual PC - 처음 생성한 VHD 파일의 크기를 바꿀 수 있을까?
854정성태10/3/200710335TFS : 136. Operations Guidance for Team Foundation Server
853정성태10/2/200710740.NET 3.5 : 31. ToJSON 확장 메서드 구현
852정성태9/30/200711869IIS : 18. IIS 7.0 의 FTP 서비스를 위한 방화벽 설정
851정성태9/27/200710907TFS : 135. TFS 2008 용 빌드 알림 도구
850정성태9/26/200710173TFS : 134. Visual Studio Team System Web Access 2008 파워툴 CTP
1  2  3  4  5  6  7  8  9  10  11  12  [13]  14  15  ...