StringEscapeUtils Unicode Converter не работает в JAVA

1
**jsp code** 

<%

    String str="&#2340;&#2369;&#2350;&#2381;&#2361;&#2366;&#2352;&#2366; &#2344;&#2366;&#2350; &#2325;&#2381;&#2351;&#2366; &#2361;&#2376;?";

     out.println("StringEscapeUtils.unescapeJava(sJava):\n" + StringEscapeUtils.unescapeJava(str));
    %>

то же самое в классе java

public static void main(String[] args) {

String str="&#2340;&#2369;&#2350;&#2381;&#2361;&#2366;&#2352;&#2366; &#2344;&#2366;&#2350; &#2325;&#2381;&#2351;&#2366; &#2361;&#2376;?";

 System.out.println("StringEscapeUtils.unescapeJava(sJava):\n" + StringEscapeUtils.unescapeJava(str));
}

в jsp его показать мне идеальный выход. которые мне нужны. но когда вы используете тот же код в JAVA Class.its, возвращаете ту же строку.

Теги:

1 ответ

1
Лучший ответ

StringEscapeUtils.unescapeJava() имеет ничего общего с объектами HTML, такими как &#2340; , Вам нужна StringEscapeUtils.unescapeHtml() чтобы отменить их.

В случае JSP эти объекты отображаются в виде символов вашим браузером, но в HTML-источнике, сгенерированном вашим JSP, они все еще экранированы, потому что StringEscapeUtils.unescapeJava() работает одинаково в обоих случаях.

  • 0
    задача решена. это была проблема в общем сообществе 3.3.1. когда я использую commons-lang 2.6. это работает нормально.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню