Android 返回null作为第一行的XML解析器

Android 返回null作为第一行的XML解析器,android,android-xml,android-resources,android-parser,Android,Android Xml,Android Resources,Android Parser,我正在使用XML解析器读取XML文件 XML解析器将第一行读取为null,然后从如此创建的XML文件返回其他数据 以下是XML解析代码: XmlResourceParser parser = getResources().getXml(R.xml.contacts); int eventType = -1; try { while (eventType != XmlResourceParser.END_DOCUMENT)

我正在使用XML解析器读取XML文件

XML解析器将第一行读取为null,然后从如此创建的XML文件返回其他数据

以下是XML解析代码:

XmlResourceParser parser = getResources().getXml(R.xml.contacts);

        int eventType = -1;
        try {
            while (eventType != XmlResourceParser.END_DOCUMENT) 
            {
                if(eventType == XmlResourceParser.START_TAG) 
                {
                    if(parser.getName().toString().equals("contact") && parser.getName().toString().equals("null"))
                        col.append(parser.getAttributeValue(null, "name") + "\n");
                        col.append(parser.getAttributeValue(null, "phone") + "\n \n");
                }
                eventType = parser.next();
            }
        }
        catch (XmlPullParserException e) {

            e.printStackTrace();
        }
以下是XML文件:

<?xml version="1.0" encoding="utf-8"?>
<contacts>
    <contact name="Prathama Blood Center" phone="079 26600101" />
    <contact name="Green Cross" phone="079 25507013"/>
    <contact name="Crossworld Blood Bank" phone="079 26568004"/>
    <contact name="Adarsh Voluntary Blood Bank" phone="079 22746672"/>
    <contact name="Red Cross" phone="079 27551790"/>
</contacts>

下面是我看到的屏幕:


现在,您的
if
的范围仅扩展到第一个
col.append
我不确定您为什么需要该if语句(因为它从来都不是真的)下面是范围:

if(parser.getName().toString().equals("contact") && parser.getName().toString().equals("null"))
{ //here
    col.append(parser.getAttributeValue(null, "name") + "\n");
    col.append(parser.getAttributeValue(null, "phone") + "\n \n");
}//and here 
parser.getName().toString().equals(“联系人”)和&parser.getName().toString().equals(“空”)
我认为这永远不会返回
真值