Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗ktSpXmTxt 241 of 299 menu
◀ ▶

Текст XML-тега в Kotlin

После разбора строки в объект Document значение простого тега берут у найденного узла:

<root> <label>alpha</label> </root>

Поиск по имени и вывод текста в консоль:

import org.xml.sax.InputSource import org.w3c.dom.Element import java.io.StringReader import javax.xml.parsers.DocumentBuilderFactory fun main() { val xml = """ <root> <label>alpha</label> </root> """.trimIndent() val doc = DocumentBuilderFactory.newInstance() .newDocumentBuilder() .parse(InputSource(StringReader(xml))) val label = doc.getElementsByTagName("label") .item(0) as Element println(label.textContent) }

Если данные разнесены по нескольким дочерним тегам, каждый ищут отдельно внутри общего родителя:

import org.xml.sax.InputSource import org.w3c.dom.Element import java.io.StringReader import javax.xml.parsers.DocumentBuilderFactory fun main() { val xml = """ <root> <record> <title>alpha</title> <code>01</code> </record> </root> """.trimIndent() val doc = DocumentBuilderFactory.newInstance() .newDocumentBuilder() .parse(InputSource(StringReader(xml))) val record = doc.getElementsByTagName("record") .item(0) as Element val title = record.getElementsByTagName("title") .item(0).textContent val code = record.getElementsByTagName("code") .item(0).textContent println(title) println(code) }

Дан следующий XML:

val xml = """ <root> <name>john</name> </root> """.trimIndent()

Выведите в консоль имя юзера.

Дан следующий XML:

val xml = """ <root> <user> <name>john</name> <surn>smit</surn> </user> </root> """.trimIndent()

Выведите в консоль имя и фамилию юзера.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить