Проблемы с преобразованием специальных символов в байты и строки - PullRequest
0 голосов
/ 24 апреля 2019

Я показываю раскрывающийся список на веб-странице, но при использовании символов в качестве ○ в качестве параметров раскрывающийся список показывает знак вопроса

Я получаю опцию раскрывающегося списка из базы данных SQL Server, в которой столбец, в котором сохраняется значение, имеет тип nvarchar Затем я создаю строку вывода XML со значениями, чтобы отправить ее в ответ на вызов AJAX

Когда я выполняю xmlWriter.toString (), будучи xmlWriter объектом StringWriter, я могу видеть символ ○ в режиме отладки Eclipse, но эту строку необходимо отправить как объект ByteArrayOutputStream, чтобы добавить его в поток ответов для ответ, чтобы увидеть файл XML на стороне клиента, но при выполнении xmlWriter.toString (). getBytes () символ ○ становится знаком вопроса

Я пытался использовать xmlWriter.toString (). GetBytes ("UTF-8"), но в результате получились странные символы

Чего мне не хватает?

1 Ответ

0 голосов
/ 24 апреля 2019

Догадываясь, в чем может быть ваша проблема, создается впечатление, что вы не указываете кодировку в своем объекте ответа для браузера, и он не может угадать правильную.Вы можете вызвать getBytes("UTF-8") как вы (лучше: getBytes(StandardCharsets.UTF_8)) и отправить информацию о кодировке вместе с вашим ответом, либо в заголовке HTTP (Content-Type: application/xml; charset=utf-8), поскольку вы, вероятно, используете HTTP, либо в заголовке XML (* 1004).*).Возможно, даже оба, поскольку это обеспечит вам наилучшую совместимость.

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