这期内容当中小编将会给大家带来有关JavaScript中escape与UNescape怎么在Java中实现共享,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
众所周知,JavaScript中escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。下面,我们就来看看 Java语言中类似JavaScript中的escape() 和unescape() 转码方法,具体代码如下:
public class EscapeUnescape {public static String escape(String src) {int i;char j;StringBuffer tmp = new StringBuffer();tmp.ensureCapacity(src.length() * 6);for (i = 0; i < src.length(); i++) {j = src.charAt(i);if (Character.isDigit(j) || Character.isLowerCase(j)|| Character.isUpperCase(j))tmp.append(j);else if (j < 256) {tmp.append("%");if (j < 16)tmp.append("0");tmp.append(Integer.toString(j, 16));} else {tmp.append("%u");tmp.append(Integer.toString(j, 16));}}return tmp.toString();}public static String unescape(String src) {StringBuffer tmp = new StringBuffer();tmp.ensureCapacity(src.length());int lastPos = 0, pos = 0;char ch;while (lastPos < src.length()) {pos = src.indexOf("%", lastPos);if (pos == lastPos) {if (src.charAt(pos + 1) == 'u') {ch = (char) Integer.parseInt(src.substring(pos + 2, pos + 6), 16);tmp.append(ch);lastPos = pos + 6;} else {ch = (char) Integer.parseInt(src.substring(pos + 1, pos + 3), 16);tmp.append(ch);lastPos = pos + 3;}} else {if (pos == -1) {tmp.append(src.substring(lastPos));lastPos = src.length();} else {tmp.append(src.substring(lastPos, pos));lastPos = pos;}}}return tmp.toString();}public static String isoToGB(String src) {String strRet = null;try {strRet = new String(src.getBytes("ISO_8859_1"), "GB2312");} catch (Exception e) {}return strRet;}public static String isoToUTF(String src) {String strRet = null;try {strRet = new String(src.getBytes("ISO_8859_1"), "UTF-8");} catch (Exception e) {}return strRet;}public static void main(String[] args) {String tmp = "中文";System.out.println("testing escape : " + tmp);tmp = escape(tmp);System.out.println(tmp);System.out.println("testing unescape :" + tmp);System.out.println(unescape("%u6211%u4eec"));System.out.println(isoToUTF(tmp));}}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- 在 Java 中如何利用 Map 构建表格?(java中怎么使用map做表格)
- Java 中的 exit 方法是否能够终止所有线程?(java exit是否能终止所有线程 )
- Java Supplier 接口如何有效避免空指针问题?(java supplier接口如何避免空指针)
- Java 中如何删除数组中的某个元素?(java怎么删除数组中的某个元素)
- 如何精准地区分 Java 中的重载方法?(如何区分Java中的重载方法)
- Java 中字符串赋值如何赋给另一个变量?(java字符串赋值怎么给另一个变量)
- Java 中静态初始化数组的具体方法有哪些?(Java静态初始化数组的方法是什么)
- Java 拦截器究竟有哪些作用呢?(java拦截器的作用是什么)
- 如何使用 Dockerfile 构建 Java 镜像?(dockerfile如何构建java镜像)
- 如何进行 Java WebService 接口的调用?(java webservice接口调用的方法是什么)
猜你喜欢
AI推送时光机JavaScript中怎么实现跨域共享
后端开发2024-04-02
Ubuntu中怎么实现数据共享
后端开发2023-06-03
C++中怎么实现共享内存
后端开发2023-06-17
怎么在Spring Boot中利用Redis实现session共享
后端开发2023-05-30
Linux中怎么实现共享内存
后端开发2023-06-12
Java中如何实现AQS共享模式与并发工具类
后端开发2023-06-02
Oracle中怎么利用Openfiler实现共享存储
后端开发2024-04-02
Java中怎么利用多线程锁实现数据同步共享
后端开发2023-06-17
怎么在JavaScript中实现new
后端开发2023-06-15
MySQL中怎么实现线程共享内存参数
后端开发2024-04-02
Node.js多进程模型中怎么实现共享内存
后端开发2024-04-02
Flex与JavaScript中怎么实现交互中调用
后端开发2023-06-17
怎么在JavaScript中实现深拷贝
后端开发2023-06-14
Ubuntu中怎么利用路由实现网络共享功能
后端开发2023-06-16
C++中怎么用共享文件实现进程间通信
后端开发2024-04-02
怎么在Java中实现引用
后端开发2023-06-15
怎么在javascript中实现页面跳转
后端开发2023-06-14
怎么在Javascript中实现异步等待
后端开发2023-06-15
咦!没有更多了?去看看其它编程学习网 内容吧