2010-11-19 5 views
1

다음 데이터를 가져 와서 파싱하는 가장 좋은 방법은 무엇일까 궁금합니다.웹 사이트에서 XML 파일 데이터 가져 오기

다음은 내가 끌어 오기 원하는 데이터의 예입니다.

<?xml version="1.0" encoding="UTF-8" ?> 
<eveapi version="2"> 
    <currentTime>2010-11-19 19:23:44</currentTime> 
    <result> 
     <rowset name="characters" key="characterID" columns="name,characterID,corporationName,corporationID"> 
      <row name="jennyhills" characterID="90052591" corporationName="Imperial Academy" corporationID="1000166" /> 
     </rowset> 
    </result> 
    <cachedUntil>2010-11-19 20:20:44</cachedUntil> 
</eveapi> 

나는 XML 데이터를 구문 분석하는 방법에 대한 몇 가지 예를 본 적이 있지만, 문 경우 그들은 모두에 기초하고 있으며 그 하드 코딩의 많은이 작업을 수행하는 더 일반적인 방법이있어?

+0

http://thedailywtf.com/Articles/Soft_Coding.aspx – dsolimano

답변

0

"파싱"이란 용어를 그대로 사용하는 것은 쉽습니다. 구문 분석은 텍스트 문자열 (귀하의 경우, http 응답에서)을 가져 와서 XML 문서 트리와 같은 데이터 구조로 바꾸는 프로세스입니다. 이 프로세스는 XML 구문 분석기에서 처리하므로 대개 걱정할 필요가 없습니다.

직면 한 부분은 구문 분석 된 XML 문서에서 데이터를 쿼리하는 방법입니다. 맞습니까? 가장 쉬운 방법은 데이터로 수행해야하는 작업에 크게 의존합니다. 그러나 XPath은 많은 자세한 if 문 및 get-child 함수 호출없이 데이터를 선택하는 좋은 방법입니다.

도 참조하십시오. this question on using XPath in Android.

1

파서는 상당히 하드 코딩되어 작동하는 방식입니다. 특정 태그가 특정 패턴과 일치하는지 확인한 다음 수행 할 작업을 결정할 수 있습니다. 특히 당신과 같은 간단한 문서의 경우에는 아무런 문제가 없습니다.

구문 분석 할 문서 유형이 두 개 이상인 경우 SO answer을 읽는 것이 좋습니다.

관련 문제