程序地带

Java Byte Arrary和Hex String相互转换


import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
public class byte2hexandhex2byte {
// Convert Hex String to Byte Array
public static byte[] hex2byte(String str) {
byte[] bytes = new byte[str.length() / 2];
for (int i = 0; i < bytes.length; i++) {
bytes[i] = (byte) Integer.parseInt(str.substring(2 * i, 2 * i + 2), 16);
}
return bytes;
}
// Convert Byte Arrary to Hex String
public static String byte2hex(byte[] b) {
// String Buffer can be used instead
String hs = "";
String stmp = "";
for (int n = 0; n < b.length; n++) {
stmp = (java.lang.Integer.toHexString(b[n] & 0XFF));
if (stmp.length() == 1) {
hs = hs + "0" + stmp;
} else {
hs = hs + stmp;
}
if (n < b.length - 1) {
hs = hs + "";
}
}
return hs;
}
private static byte[] getSalt() throws NoSuchAlgorithmException {
SecureRandom random = new SecureRandom();
byte[] salt = new byte[16];
random.nextBytes(salt);
return salt;
}
public static void main(String[] args) throws NoSuchAlgorithmException {
byte[] a = getSalt();
System.out.println(byte2hex(a));
System.out.println(byte2hex(hex2byte(byte2hex(a))));
}
}

 


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/allway2/article/details/112689154

随机推荐

区块如何防篡改_深入浅出:一条数据是如何完成上链的

一笔业务数据在区块链处理的流程大致分为三个阶段:分别是上链前处理阶段、链上处理阶段和智能合约处理阶段。一.上链前处理阶段业务数据上链前需要将业务数据处理,并且对信息进行签名...

我读过书不要骗我 阅读(462)

moment常用函数

1:安装:npminstallmoment--save2:引入:importmomentfrom'moment'常用方法1、初始...

天真公子 阅读(570)

bos 获取数据库连接_JDBC--获取数据库连接

1、JDBC(JavaDatabaseConnectivity)是一个独立于特定数据库管理系统、统一的sQL数据库存取和操作的公共接口。2、Java中的几种数据库存取技术:--1)JDB...

荣耀张大仙~~~ 阅读(996)