Экранирование строки JavaScript в Java
Мне нужно сделать это в строку в Java:
<script type="text/javascript">document.write("<img src=\"UpArrow.png\" /> \"); </script>
Может кто-нибудь помочь? Я продолжаю пытаться, и это заканчивается так...
return "<script type=\"text/javascript\">document.write(\"<img src=\"UpArrow.png\" /> \"); </script>";
Что не работает, потому что мне нужно дважды экранировать кавычки до и после UpArrow.png. так как это должно быть экранировано в javascript, а не в java.
3 ответа
Решение
У общих Apache есть методы только для этого в StringEscapeUtils: escapeJavaScript
метод.
Кажется, он снова перемещен, теперь он является частью "commons-text" и называется:
StringEscapeUtils.escapeEcmaScript
Но хорошо это все еще существует.
Похоже, что он был перемещен в Apache Commons Lang 3 в ESCAPE_ECMASCRIPT в StringEscapeUtils.