-1

我想从放置在 assets 文件夹中的 xml 数据库中提取数据。// 一个数据库样本

<?xml version="1.0" encoding="utf-8" ?>
   <Levels>

   <level id ="0">
     <start>3,2</start>
   <one>1,1</one>
    </level>
    <level id ="1">
<start>3,2</start>
  <one>4,1</one>
     </level>
  </Levels>

我希望数据拉取将通过 id 例如 id=0 返回 <start>3,2</start> <one>1,1</one>。有一个问题-我不知道该怎么做请帮助我//------------------ -------------------------------------------------- ---- 编辑:我收到错误请检查我的 xmlparser 类:

 package com.example.com.worfield.barak;
   import java.io.IOException;
 import java.io.StringReader;

     import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

 import org.apache.http.impl.client.DefaultHttpClient;
 import org.w3c.dom.Document;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
 import org.xml.sax.InputSource;
 import org.xml.sax.SAXException;

 import android.content.Context;
 import android.sax.Element;
  import android.util.Log;


public class XMLParser 
 {
Context context;

   public XMLParser(Context c)
     {

   context = c;
 }

public Document getDomElement()
{
    Document doc = null;
    try
    {
    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    doc = db.parse( context.getAssets().open("Level5X5Three.xml"));

    }
    catch(Exception ex)
    {

        Log.e("xml parse error", "eror in getdomelement()");
    }
        return doc;
}
public String getValue(Element e, String str) 
{      
    NodeList n = ((Document) e).getElementsByTagName(str);        //problem
    return this.getElementValue(n.item(0));
}

public final String getElementValue( Node elem ) 
{
         Node child;
         if( elem != null){
             if (elem.hasChildNodes()){
                 for( child = elem.getFirstChild(); child != null; child = child.getNextSibling() ){
                     if( child.getNodeType() == Node.TEXT_NODE  ){
                         return child.getNodeValue();
                     }
                 }
             }
         }
         return "";
  } 
    }
4

1 回答 1

0

只需按照以下教程进行操作,这将解释您需要的一切

http://www.androidhive.info/2011/11/android-xml-parsing-tutorial/

于 2013-05-09T17:54:41.840 回答