У меня есть webapp, который позволяет пользователю вводить текст в текстовое поле, а затем нажать save.Обработка преобразования текста между java и xml
Текст затем сохраняется в базе данных в xml clob и отображается обратно пользователю через webapp как html.
Есть несколько вопросов со специальными символами.
При сохранении из области текста в XML, следующие символы должны быть экранированы: & < > " '
Newline символы будут сохранены в XML правильно, однако, когда они отображаются в виде HTML, символ новой строки не имеют никакого эффекта.
Оба эти вопроса могут быть решены следующим образом.
Перед сохранением в формате XML:
//get string from text area
string = string.replaceAll("&", "&");
string = string.replaceAll("<", "<");
string = string.replaceAll(">", ">");
string = string.replaceAll("\"", """);
string = string.replaceAll("\'", "'");
После принятия текста из XML:
//get text from xml
string = string.replaceAll("\n", "<br/>");
Это решение отлично работает для того, что я пытаюсь добиться.
Вопрос в том, чтобы не изобретать колесо или элегантность, есть ли лучшее или существующее решение этой проблемы?