2010-06-08 4 views
0

WebRequest.Create()를 사용하여 다운로드 한 일부 XML (html)을 구문 분석하고 읽는 중입니다. 그러나 LoadXml (string)을 사용하여 XML 파일을로드 한 후에는 다른 어떤 것도 실행되지 않습니다. 나중에 아무 것도 설정하지 않으면 작동하지 않고 중단되지 않습니다.VB.NET에서 XML 구문 분석을 시도한 후 프로그램이 코드를 건너 뜁니다.

예외를 잡으려고했지만 아무도 발생하지 않으므로 문제가 무엇인지 잘 모릅니다. 이에 "xDoc.LoadXml (reader.ReadToEnd은())".. 실행하지 않습니다 어떤 아이디어 후

Dim reader As StreamReader = New StreamReader(HTTPResponse.GetResponseStream()) 
     Dim xDoc As XmlDocument = New XmlDocument() 
     xDoc.LoadXml(reader.ReadToEnd()) 
     Dim omfg As String = xDoc.ChildNodes().Item(0).InnerText() 
     Dim name As XmlNodeList = xDoc.GetElementsByTagName("div") 
     Dim jj As Integer = name.Count 
     For i As Integer = 0 To name.Count - 1 
      MessageBox.Show(name.Item(i).InnerText) 
     Next i 

아무것도 : 여기

내 코드? XML의 처음 부분에 공백이 있습니다. 문제가 원인인지 여부는 알 수 없습니다.

+0

오류 메시지가 나타납니다? try catch 블록의 코드로 오류가 발생하지 않습니다. –

답변

1

다운로드 할 HTML이 올바른 형식이 아니므로 예외가 발생합니다. xml , 그리고 당신은 오류를 숨기는 하이 레벨 try catch 블록을 가지고 있습니다.

+0

흠, 네 말이 맞아. 내가 XML에서 무엇이 잘못되었는지 알아낼 수있는 방법이 있습니까? – Bead

+2

아마도 catch catch 블록을 제거하거나 잡히는 예외를 debug.print해야합니다. 아마도 적어도이 문제에 대한 어떤 생각을 밝힐 수있을 것입니다. –

+0

@Bead - HTML과 달리 실제 XML은 매우 까다로운 형식입니다. 호환되는 XML 파커는 완벽하지 않은 것을 치명적인 오류로 취급해야합니다. 실제 HTML 문서에서 xml 파서를 사용하는 것은 매우 까다로운 일일 수 있습니다. –

관련 문제