Группа XML-тегов в Kotlin
Когда в документе повторяется одно имя, список узлов содержит больше одного элемента:
<root>
<item>alpha</item>
<item>beta</item>
<item>gamma</item>
</root>
Длина списка и индекс item задают цикл
обхода:
import org.xml.sax.InputSource
import org.w3c.dom.Element
import java.io.StringReader
import javax.xml.parsers.DocumentBuilderFactory
fun main() {
val xml = """
<root>
<item>alpha</item>
<item>beta</item>
<item>gamma</item>
</root>
""".trimIndent()
val doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder()
.parse(InputSource(StringReader(xml)))
val items = doc.getElementsByTagName("item")
for (i in 0 until items.length) {
val item = items.item(i) as Element
println(item.textContent)
}
}
Дан следующий XML:
val xml = """
<root>
<name>john</name>
<name>eric</name>
<name>kyle</name>
</root>
""".trimIndent()
Выведите в консоль имя каждого юзера.