Ошибка синтаксического анализа kxml2 getName и getText возвращают ноль, а анализатор переходит к следующему? - PullRequest
0 голосов
/ 21 октября 2011
<a:GroupList>

 <a:Group><a:Caption>text</a:Caption><a:Id>1</a:Id></a:Group>
 <a:Group><a:Caption>text</a:Caption><a:Id>3</a:Id></a:Group>
 <a:Group><a:Caption>text</a:Caption><a:Id>4</a:Id></a:Group>
 <a:Group><a:Caption>text</a:Caption><a:Id>6</a:Id></a:Group>
 <a:Group><a:Caption>text</a:Caption><a:Id>7</a:Id></a:Group>

 </a:GroupList>

это моя часть xml.во-первых, getname возвращает groupList после того, как возвращает Caption.Почему id переходит в группу, и после того, как я возвращаю много пустых значений ... Я использовал один и тот же код на J2me и Android.

мой код скоро ..

while (еслиимя начального тега = parser.getName (); parser.next ();

if --endtag ..)

 if (name.equals("GetGroupListResult")) {
                    Vector groupList = new Vector();
                    while ((parseEvent = parser.next()) != XmlPullParser.END_DOCUMENT) {
                        if (parseEvent == XmlPullParser.START_TAG) {
                            name = parser.getName();
                            parser.next();
                            String value = parser.getText();
                            System.out.print(name + "  :  " + value);
                            if (name.equals("a:Result")) {
                                int result = -2;
                                if (value.equals("ERROROCCURED")) {
                                    result = 0;
                                } else if (value.equals("SUCCESSFUL")) {
                                    result = 1;
                                }
                                jobj.put("Result", result);
                            } else if (name.equals("a:GroupList")) {
                                GroupCompany group = new GroupCompany();
                                while ((parseEvent = parser.next()) != XmlPullParser.END_DOCUMENT) {
                                    if (parseEvent == XmlPullParser.START_TAG) {
                                        name = parser.getName();
                                        parser.next();
                                        value = parser.getText();
                                        if (name.equals("a:Caption")) {
                                            group.setName(value);
                                        } else if (name.equals("a:Id")) {
                                            group.setId(Integer.parseInt(value));
                                        }
                                    } else if (parseEvent == XmlPullParser.END_TAG) {
                                        name = parser.getName();
                                        if (name.equals("a:GroupList")) {
                                            groupList.addElement(group);
                                            break;
                                        }
                                    }

                                }
                            }
                        } else if (parseEvent == XmlPullParser.END_TAG) {
                            name = parser.getName();
                            if (name.equals("GetGroupListResult")) {
                                XAppParser.groupCompanies = groupList;
                                break;
                            }
                        }
                    }
                }
...