2010-11-19 11 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を読むことをお勧めします。

関連する問題