Java字节码进制转换
来源:互联网 发布:淘宝浩升软件什么用途 编辑:程序博客网 时间:2024/05/22 13:19
在理解二进制和十进制、十六进制时发现的,作为后续参考保存!
public class codeCon {/** * 字符串转换成十六进制值 * @param bin String 我们看到的要转换成十六进制的字符串 * @return */ public static String bin2hex(String bin) { char[] digital = "0123456789ABCDEF".toCharArray(); StringBuffer sb = new StringBuffer(""); byte[] bs = bin.getBytes(); int bit; for (int i = 0; i < bs.length; i++) { bit = (bs[i] & 0x0f0) >> 4; sb.append(digital[bit]); bit = bs[i] & 0x0f; sb.append(digital[bit]); } return sb.toString(); } /** * 十六进制转换字符串 * @param hex String 十六进制 * @return String 转换后的字符串 */ public static String hex2bin(String hex) { String digital = "0123456789ABCDEF"; char[] hex2char = hex.toCharArray(); byte[] bytes = new byte[hex.length() / 2]; int temp; for (int i = 0; i < bytes.length; i++) { temp = digital.indexOf(hex2char[2 * i]) * 16; temp += digital.indexOf(hex2char[2 * i + 1]); bytes[i] = (byte) (temp & 0xff); } return new String(bytes); } /** * java字节码转字符串 * @param b * @return */ public static String byte2hex(byte[] b) { //一个字节的数, // 转成16进制字符串 String hs = ""; String tmp = ""; for (int n = 0; n < b.length; n++) { //整数转成十六进制表示 tmp = (java.lang.Integer.toHexString(b[n] & 0XFF)); if (tmp.length() == 1) { hs = hs + "0" + tmp; } else { hs = hs + tmp; } } tmp = null; return hs.toUpperCase(); //转成大写 } /** * 字符串转java字节码 * @param b * @return */ public static byte[] hex2byte(byte[] b) { if ((b.length % 2) != 0) { throw new IllegalArgumentException("长度不是偶数"); } byte[] b2 = new byte[b.length / 2]; for (int n = 0; n < b.length; n += 2) { String item = new String(b, n, 2); // 两位一组,表示一个字节,把这样表示的16进制字符串,还原成一个进制字节 b2[n / 2] = (byte) Integer.parseInt(item, 16); } b = null; return b2; }public static void main(String[] args) { String content = "你好!fjssharpsword"; System.out.println(hex2bin(bin2hex(content))); byte[] b={'a','b'}; System.out.println(byte2hex(hex2byte(b)));} }
0 0
- Java字节码进制转换
- Java字节序转换
- JAVA 字节顺序转换
- Java字节序转换
- JAVA字节转换
- 【Java】对象、字节转换
- JAVA文件字节单位转换
- JAVA文件字节单位转换
- Java 字节字符转换流
- Java大字节顺转换小字节顺
- Java的二进制文件字节序转换
- Java中文件与字节数组转换
- Java字节流与类型转换
- java对象转换为字节数组
- Java中文件与字节数组转换
- java对象转换为字节数组
- Java基本类型转换成字节流
- java字符串转换成字节流
- getspnam
- spoj LCS2 【后缀自动机】
- loadTemplate用ajax获取数据动态加入多个ratio
- 详述在设有快表的请求分页存储管理系统中,一个虚地址转换成物理内存地址的过程。
- 剑指offer 重建二叉树
- Java字节码进制转换
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 1)
- java多线程实现(thread和runnable接口两种方式以及其区别)
- mysql主从原理
- 解析类型 javax.swing.JComponent的问题处理
- 动态规划——01背包问题
- 转载:面试时,问哪些能试出一个Android开发者真正的水平
- 查看错误信息
- Visual Studio快捷键总结