我的 Android 应用程序使用Simple XML读取一个巨大的 XML 文件。显然这需要一段时间。事实是,目前,我只需要检索一个元素列表。有没有办法强制简单 XML 不读取所有其他元素?
我不想使用另一个库。我只是想知道这种高级的东西是否可以使用简单的 XML。
谢谢您的帮助。
编辑
使用MH建议,解析仍然需要 50 秒...
所以我想尝试使用Ilya Blokh的其他解决方案XmlPullParser。
这是 XML 文件所需的部分:
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
....
<ANIMALS>
<animal>
<name>Dog</name>
<color>white</color>
<color>black</color>
<color>brown</color>
</animal>
<animal>
<name>Cat</name>
<color>white</color>
<color>black</color>
<color>gray</color>
<color>red</color>
</animal>
...
</ANIMALS>
...
</ROOT>
我想填充这个类:
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Animals {
/**
* Key: animal name, Value: animal colors
*/
private Map<String, List<String>> entries;
public Animals() {
entries = new HashMap<String, List<String>>();
}
public void addAnimal(String name, List<String> colors) {
entries.put(name, colors);
}
public List<String> getColors(String animalName) {
return entries.get(animalName);
}
}
我该如何处理列表和 XmlPullParser?我不习惯使用解析器...
再次感谢