1、今天遇到这么个问题,需要把一些特殊字符传递到后台进行处理,例如Aa111111!@#,结果到了后台出现了个别字符中文符号了。这个时候需要转码。常见的就是js端的escape和unescape这种函数。

2、但是,我的场景是页面js进行escape,需要java接收数据再unescape

3、有很多写法,有的是自己写一个unescape实现的工具类,我用的是更为简便的写法,如下:

ScriptEngineManager sem = new ScriptEngineManager();  
ScriptEngine engine = sem.getEngineByExtension("js");  
Object res = engine.eval("escape('Aa111111!@#')");  
System.out.println(res); 
Object res1 = engine.eval("unescape('Aa111111%21@%23')");  
System.out.println(res1);

 

相关文章:

  • 2021-11-19
  • 2021-09-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-26
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-02
  • 2021-06-06
  • 2022-02-02
  • 2022-12-23
  • 2021-10-29
  • 2021-05-31
相关资源
相似解决方案