本文整理了Java中org.apache.shiro.codec.Hex.toDigit()
方法的一些代码示例,展示了Hex.toDigit()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Hex.toDigit()
方法的具体详情如下:
包路径:org.apache.shiro.codec.Hex
类名称:Hex
方法名:toDigit
[英]Converts a hexadecimal character to an integer.
[中]将十六进制字符转换为整数。
代码示例来源:origin: apache/shiro
/**
* Converts an array of characters representing hexadecimal values into an
* array of bytes of those same values. The returned array will be half the
* length of the passed array, as it takes two characters to represent any
* given byte. An exception is thrown if the passed char array has an odd
* number of elements.
*
* @param data An array of characters containing hexadecimal digits
* @return A byte array containing binary data decoded from
* the supplied char array.
* @throws IllegalArgumentException if an odd number or illegal of characters
* is supplied
*/
public static byte[] decode(char[] data) throws IllegalArgumentException {
int len = data.length;
if ((len & 0x01) != 0) {
throw new IllegalArgumentException("Odd number of characters.");
}
byte[] out = new byte[len >> 1];
// two characters form the hex value.
for (int i = 0, j = 0; j < len; i++) {
int f = toDigit(data[j], j) << 4;
j++;
f = f | toDigit(data[j], j);
j++;
out[i] = (byte) (f & 0xFF);
}
return out;
}
代码示例来源:origin: org.apache.shiro/shiro-lang
/**
* Converts an array of characters representing hexadecimal values into an
* array of bytes of those same values. The returned array will be half the
* length of the passed array, as it takes two characters to represent any
* given byte. An exception is thrown if the passed char array has an odd
* number of elements.
*
* @param data An array of characters containing hexadecimal digits
* @return A byte array containing binary data decoded from
* the supplied char array.
* @throws IllegalArgumentException if an odd number or illegal of characters
* is supplied
*/
public static byte[] decode(char[] data) throws IllegalArgumentException {
int len = data.length;
if ((len & 0x01) != 0) {
throw new IllegalArgumentException("Odd number of characters.");
}
byte[] out = new byte[len >> 1];
// two characters form the hex value.
for (int i = 0, j = 0; j < len; i++) {
int f = toDigit(data[j], j) << 4;
j++;
f = f | toDigit(data[j], j);
j++;
out[i] = (byte) (f & 0xFF);
}
return out;
}
代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.shiro
/**
* Converts an array of characters representing hexidecimal values into an
* array of bytes of those same values. The returned array will be half the
* length of the passed array, as it takes two characters to represent any
* given byte. An exception is thrown if the passed char array has an odd
* number of elements.
*
* @param data An array of characters containing hexidecimal digits
* @return A byte array containing binary data decoded from
* the supplied char array.
* @throws IllegalArgumentException if an odd number or illegal of characters
* is supplied
*/
public static byte[] decode(char[] data) throws IllegalArgumentException {
int len = data.length;
if ((len & 0x01) != 0) {
throw new IllegalArgumentException("Odd number of characters.");
}
byte[] out = new byte[len >> 1];
// two characters form the hex value.
for (int i = 0, j = 0; j < len; i++) {
int f = toDigit(data[j], j) << 4;
j++;
f = f | toDigit(data[j], j);
j++;
out[i] = (byte) (f & 0xFF);
}
return out;
}
内容来源于网络,如有侵权,请联系作者删除!