字符转换为16进制字符串以及转换回来的方法
2013-08-14 17:22
323 查看
//16进制字符串转化为字节 public static byte[] HexString2Bytes(String hexstr) { byte[] b = new byte[hexstr.length() / 2]; int j = 0; for (int i = b.length-1; i >=0; i--) { char c0 = hexstr.charAt(j++); char c1 = hexstr.charAt(j++); b[i] = (byte) ((parse(c0) << 4) | parse(c1)); } return b; } private static int parse(char c) { if (c >= 'a') return (c - 'a' + 10) & 0x0f; if (c >= 'A') return (c - 'A' + 10) & 0x0f; return (c - '0') & 0x0f; } //转换为16进制字符串 public static String hexString(String str) { String ret = ""; byte[] b; try { b = str.getBytes("GB2312"); for (int i = b.length - 1; i >= 0; i--) { String hex = Integer.toHexString(b[i] & 0xFF); if (hex.length() == 1) { hex = '0' + hex; } ret += hex.toUpperCase(); } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return ret; } public static void main(String[] args) throws Exception { String str = hexString("好啊tianta了"); System.out.println(str); byte[] b = HexString2Bytes(str); String s=new String(b,"GB2312"); System.out.println(s); }
相关文章推荐
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- Python中将字符串转换成单一字符的操作以及将单一字符拼接成字符串操作
- Java中char数组(字符数组)与字符串String类型的转换方法
- SSH中转义特殊字符串以及非Web项目中的特殊字符转换
- JAVA将 带有空格或特殊字符的字符串转换成int数组的方法
- c++的字符串char与string相互转化,以及string的,切割,替换字符,字符串拼接方法
- 把含有两个字符的字符串转换为16进制保存的一字节数据
- 用jquery解析JSON数据的方法以及字符串转换成json的3种方法 .
- python实现从字符串中找出字符1的位置以及个数的方法
- php判断字符以及字符串的包含方法属性
- Python实现将16进制字符串转化为ascii字符的方法分析
- c++的字符串char与string相互转化,以及string的,切割,替换字符,字符串拼接方法(object向c++转型系列教程2)
- byte[]转换成16进制字符串的高效方法或算法
- c++的字符串char与string相互转化,以及string的,切割,替换字符,字符串拼接方法(object向c++转型系列教程2)
- Java中char数组(字符数组)与字符串String类型的转换方法
- JNI中 Java 中字符串 转换成C中的字符数组方法
- SQL Server下字符串,整数转换成16进制字符串的方法
- php判断字符以及字符串的包含方法属性
- js中json字符串转换为对象以及转换是报 缺少";"错误的解决方法
- 字符转换为16进制和整数等的方法