十六进制的字符串和字节数组之间的转换
2015-03-27 17:25
399 查看
** * This class provides convenient functions to convert hex string to byte array and vice versa.* */ public class HexUtil { private static final String HEX_CHARS = "0123456789abcdef"; private HexUtil() {} /** * Converts a byte array to hex string. * * @param b - * the input byte array * @return hex string representation of b. */ public static String toHexString(byte[] b) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < b.length; i++) { sb.append(HexUtil.HEX_CHARS.charAt(b[i] >>> 4 & 0x0F)); sb.append(HexUtil.HEX_CHARS.charAt(b[i] & 0x0F)); } return sb.toString(); } /** * Converts a hex string into a byte array. * @param s - * string to be converted * @return byte array converted from s */ public static byte[] toByteArray(String s) { byte[] buf = new byte[s.length() / 2]; int j = 0; for (int i = 0; i < buf.length; i++) { buf[i] = (byte) ((Character.digit(s.charAt(j++), 16) << 4) | Character.digit(s.charAt(j++), 16)); } return buf; } }
相关文章推荐
- 字节数组 整型 字符串 十六进制 字符 之间的转换
- java 中字节数组与十六进制字符串及普通字符串之间的转换
- MSDN将字节数组转换为十六进制值字符串时 Byte 的用法
- C# 16进制与字符串、字节数组之间的转换
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
- C# 16进制与字符串、字节数组之间的转换
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
- C# 16进制与字符串、字节数组之间的转换
- Java整数-字节,字节-字符,字节数组-十六进制字符串转换
- C# 16进制与字符串、字节数组之间的转换
- C# 16进制与字符串、字节数组之间的转换
- C# 16进制与字符串、字节数组之间的转换
- C# 16进制与字符串、字节数组之间的转换
- C# 16进制与字符串、字节数组之间的转换
- 16进制与字符串、字节数组之间的转换
- JavaScript十六进制字符串和字节数组相互转换
- C# 16进制与字符串、字节数组之间的转换(转)
- 字节数组和字符串按十六进制互相转换
- C# 16进制与字符串、字节数组之间的转换
- 十六进制字符串和byte数组之间的各种转换关系