根据来自xml的cat_name创建cat_desc

时间:2011-10-23 18:19:29

标签: android saxparser

我必须在listview中显示cat_name,当我点击任何名称时,它将显示它的cat_description。我的网址是http://mobileecommerce.site247365.com/admin/catdata.xml

我能够在listview中显示名称。我的问题是我解析整个cat_desc但我想根据cat_name.if特定的cat_desc,任何人都有这个想法吗?

我用

if(currenttag.equals("Cat_Desc"))
    sitesList.setCat_Desc(String.valueOf(ch,start,length));

设置cat_desc。但它会设置所有cat_desc,但我想要特定的cat_desc。 当我获取cat_desc时,我使用sitelist.getcatdesc()。size()。它会显示我大约4500。

如果任何人有任何解决方案或给我解决方案。

我的处理程序 -

public void startElement(String uri, String localName, String qName,Attributes attributes) throws SAXException 

{     
   currenttag=localName;

if(currenttag.equals("NewDataSet")) {           
    currentElement =true;       
    sitesList = new SitesList();            

   }            
}
public void endElement(String uri, String localName, String qName)throws SAXException

{

    super.endElement(uri, localName, qName);
        if(qName.equals("NewDataSet"))
          {
            currentElement = false;
          }

     }
public void characters(char[] ch, int start, int length)throws SAXException

{


if(currenttag.equals("Cat_Name"))


   sitesList.setCat_Name(String.valueOf(ch,start,length));



else if(currenttag.equals("Cat_Desc"))


   sitesList.setCat_Desc(String.valueOf(ch,start,length));

java class -

 for (int i = 0; i less than sitesList.getCat_Name().size(); i++) 

    catNames[i]=sitesList.getCat_Name().get(i);         



for(int j=0; j less than sitesList.getCat_Desc().size();j++)                

   catdesc[j]=sitesList.getCat_Desc().get(j);

谢谢和问候

Arpit

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您可以修改此代码:

else if(currenttag.equals("Cat_Desc"))


   sitesList.setCat_Desc(String.valueOf(ch,start,length)); 

到此

 else if(currenttag.equals("Cat_Desc")){
   sitesList.setCat_Desc(String.valueOf(ch,start,length));
     if(currentCat.equals("desired_cat"){
       specialDescription = String.valueOf(ch,start,length);

其中specialDescription是SaxParser类中的字段(实例变量)。