Как добавить информацию о документе xml с помощью scala.xml? - PullRequest
10 голосов
/ 23 января 2012

Прежде всего:

  • Я знаю об анти-xml и масштабах, но я бы хотел использовать стандартный scala.xml
  • Я предпочитаю создавать XML-документ, используяявные методы, не с неявным синтаксисом xml, встроенным в Scala

Хорошо, поэтому у меня есть такой кусок кода:

val text = new scala.xml.Text("just a text")
val root = new scala.xml.Elem(null,"element",null,scala.xml.TopScope,text)
val doc = new scala.xml.Document()
doc.docElem = root
println(doc.toString())

Почти хорошо, но в результате я получаю:

<element>just a text</element>

и я хотел бы также получить заголовок XML, например:

<?xml version="1.0"?>
<element>just a text</element>

Вопрос: Как его добавить?

Изконечно в здравом смысле, а не какой-то взлом с лишним дословно println с заголовком; -).

1 Ответ

10 голосов
/ 23 января 2012

Единственное решение, которое я нашел, это добавить следующий код

val writer : PrintWriter = new PrintWriter(System.out)
XML.write(writer,root,"utf-8",true,null)
writer.flush()
...