Я только начал программировать в Scala и я столкнулся с трудностями с этой самой базовой структуры XML:Scala: Как добавить новый узел в файл XML и как удалить узел из XML-файл
<Countries>
<Country>
<Name>Italy</Name>
<Continent>Europe</Continent>
</Country>
<Country>
<Name>Japan</Name>
<Continent>Asia</Continent>
</Country>
</Countries>
Проблема 1: Я хотел бы добавить новый файл (новую страну) в файл. Я успешно загрузил файл, используя XML.loadFile, но не знаю, как добавить новый узел, а затем сохранить обратно файл.
Проблема 2: Я также хотел бы удалить узлы из файла, но даже здесь я затрудняюсь для достижения того, что хочу, особенно потому, что хочу удалить узел, в котором элемент соответствует названию страны, введенному пользователем.
Я использовал кусок кода, который я нашел в Интернете:
val removeIt = new RewriteRule {
override def transform(n: Node): NodeSeq = n match {
case e: Elem if (e \ "Name").text == "Japan" => NodeSeq.Empty
case n => n
}
}
Это работает, но, к сожалению, она возвращается обратно NodeSeq, что не принято в качестве параметра Xml.Save, а также я понятия не имею, как пройти параметр String, чтобы определить, какой узел удалить.
Все отлично, спасибо большое - на всякий случай вы хотите объяснить некоторые из таких логик, как эта строка, я бы очень признателен: Elem (_, _, _, _ и т. Д. – WPRookie82