2009-12-16 1 views
1

Я разбираю объект ServletRequest (ну, действительно HttpServletRequest) Есть 2 параметра, один из которых я знаю, чтобы иметь значение, которое является XML-файлом.Получил строку из ServletRequest с помощью getParameter («somename»). Как я могу вернуть его в XML?

Как я могу получить этот XML как Doc или byte [] или аналогичный, а не String?

ответ

1
  • Вы можете конвертировать String в byte[] достаточно легко, используя его getBytes() функцию.

  • Если вам нужен документ, вам придется его разобрать. Для этого вы можете получить DocumentBuilder от DocumentBuilderFactory, и пусть parse() a ByteArrayOutputStream обернут вокруг этого байтового массива.

+0

Спасибо большое! Предложенное работал отлично! – akapulko2020

2

Если у вас есть строка, которая содержит XML, вы можете разобрать, что в документ путем разбора из StringReader, который оборачивает String. Не конвертируйте String в байты, если вы не справитесь с потенциальными проблемами с кодировкой.

builder.parse (новый InputSource (новый StringReader (theString))

+0

Сильнее, не преобразовывать строки в байтах, поэтому анализатор должен преобразовывать байт обратно к символьному потоку. Это два ненужных этапа транскодирования, которые могут не совпадать с набором символов и тонко повреждать данные. –

+0

Спасибо, я постараюсь как можно скорее реорганизовать ваше решение – akapulko2020

Смежные вопросы