Добавить новый корневой элемент для XML в Java - PullRequest
0 голосов
/ 20 октября 2019

У меня есть строка в Java, которая находится в формате XML. P примечание об аренде: это не xml-файл, а строка в формате XML.

Мне нужно добавить для этого новый корневой элемент.

Мой xml

<Country>
  <Street>ABC</Street>
  <City>XYZ</Street>
</Country>

Мне нужно

<Location>
    <Country>
       <Street>ABC</Street>
       <City>XYZ</Street>
    </Country>
</Location>

Я пробовал много способов, и это также связано с моей проблемой, которую я опубликовал ранее.

Jaxb Marshals то же XML-сообщение Вопрос

Так как мне нужно быстрое решение, подумал о добавлении корня как-то.

Заранее спасибо.

1 Ответ

1 голос
/ 20 октября 2019

Возможно, есть более общий и лучший способ сделать то, что вы пытаетесь сделать, но поскольку вопрос касается конкретно использования String ...

В комментариях вы сказали, что отступ имеет значение,Это означает, что вам нужно сделать отступ для всего, что у вас есть, т.е. добавить 2 или 4 пробела или табуляцию, или сколько вы хотите сделать отступ. Это необходимо сделать после каждого \n символа.

Затем можно поставить <newRoot>\n в начале строки и \n</newRoot> в конце строки.

Примечание: это будет работать только "как предназначено" для уже отформатированных строк ввода XML. Другими словами, если вы дадите ему

<t1>
  <t2>
    <t3>
  </t3>
  </t2>
</t1>

(который не имеет постоянного отступа)

Он вернет вам тот же внутренний XML, но с добавленным 1 последовательным уровнем отступа:

<t0>
  <t1>
    <t2>
      <t3>
    </t3>
    </t2>
  </t1>
</t0>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...