我正在尝试从位于原始资源中的 XML 文件中检索信息,该文件的结构如下:
<?xml version="1.0" encoding="utf-8" ?>
<languages>
<language code="ab">Abkhazian</language>
<language code="aa">Afar</language>
<language code="af">Afrikaans</language>
<language code="sq">Albanian</language>
...
我要做的是用语言的值填充一个列表,比如“Abkhazian”、“Afar”……我尝试使用 XMLPullParser,但我不知道如何检索名称语言,因为它不是一个领域。 任何帮助将不胜感激。
最佳答案
那么你将使用普通的 string-array
怎么样?
<string-array name="languages">
<item>Abkhazian</item>
<item>Afar</item>
<item>Afrikaans</item>
</string-array>
然后调用 String[] langs = getResources().getStringArray(R.id.languages);
或者尝试使用经典的 W3C DOM 解析器:
DocumentBuilderFactory f = DocumentBuilderFactory.newInstance();
Document doc;
doc = f.newDocumentBuilder().parse(<xml>);
NodeList langs = doc.getElementsByTagName("languages");
ArrayList<String> data = new ArrayList<String>();
String lang = null;
for (int i = 0; i < langs.getLength(); i++) {
Node n = langs.item(i);
if (n.getFirstChild().getNodeType() == Node.TEXT_NODE) {
lang = n.getFirstChild().getNodeValue();
data.add(lang);
}
关于java - 在 Android 中用 XML 内容填充列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14911806/