很多时候我们需要将字节数组转化为16进制字符串来保存,尤其在很多加密的场景中,例如保存密钥等.因为字节数组,除了写入文件或者以二进制的形式写入数据库以外,无法直接转为为字符串,因为字符串结尾有\0,当然肯定还有其他原因. 下面提供几种Java中使用的方案: 方案一:直接利用BigInteger的方法,应该是最简单的方案了. /** * 利用签名辅助类,将字符串字节数组 * @param str * @return */ public static byte[] md5(String str) {