2012-05-18 2 views
0

내가 문자열로 HTTP 서버에서 XML을받을 포함안드로이드 문자열이 두 값

HttpResponse httpResponse = httpClient.execute (httpPost); 
return EntityUtils.toString (httpResponse.getEntity()); 

이 문자열은 어떻게 든 내가 내가 로그 캣에 두 줄을 얻을 길이의 로그온 할 때 때문에, 두 값이 나타납니다 : 문서의 예기치 않은 종료 : 나는 DOM 파서이 XML을 구문 분석 할 때

Log.d ("XML", xml.length() + ""); 

17:30:22.313 19712 DEBUG XML 161 
17:30:22.313 19712 DEBUG XML 0 

는, 나는 org.xml.sax.SAXParseException를 얻을.

나는 비슷한 것을 읽었습니다. here. 나는 한 줄의 코드로 두 개의 Logcat 줄을 얻을 때 나에게 뭔가 잘못되어있는 사람이 아니라는 것을 알고있다. 무엇이 문제 일 수 있습니까?

+1

나는 그것이 그대로 컴파일되지 않을 것이라고 생각합니다. 첫 번째 닫는 괄호가 있어야합니까? – derekerdmann

+0

어떤 이유로 든 두 개의 응답을 받았을 수 있습니다. 그 중 하나는 비어 있습니까? – Ash

+0

하나의 String 객체를 기록하려고합니다. 얼마나 많은 응답을 받을지는 중요하지 않습니다. – Martynas

답변

0

메소드 인수를 통해 XML 문자열을 전달하는 것과는 대조적으로 구문 분석하는 것과 동일한 방법으로 XML을 요청하면 문제가 해결되었습니다. 나는 똑같은 코드를 사용했고, 그냥 다른 메소드로 옮겼다. 이상한 Android 또는 NetBeans 버그 인 것 같습니다.

0

xml.length이 아니고 xml).length이 아니어야합니까? 로그 캣 아닌 구문 분석 실패를 설명 할 수

...

+0

혼란에 대해 죄송합니다. 새로운 String (xml) .lenght()를 로깅하려고했지만 다시 올바르게 편집하지 않았습니다. 나는 그 질문을 편집 할 것이다. – Martynas

0

2 여는 괄호, 3 폐쇄, 다른 의견이 말했듯이, 그것은 거 컴파일되지 않습니다. 코드를 잘못 인용 한 것 같습니다. 두 번째 길이 0은 아마도 ""에서옵니다. logcat은 두 개의 로그를 보여주기 때문에 하나의 Log.d 라인을 가지고있을 것입니다.) 그리고 두 라인은 함께 이상한 결과를냅니다.