方法一:
public static String getMd5(String str) {
MessageDigest md5 = null;
try {
md5 = MessageDigest.getInstance("MD5");
} catch (Exception e) {
System.out.println(e.getMessage());
}
byte[] bs = md5.digest(str.getBytes());
StringBuilder sb = new StringBuilder(40);
for(byte x:bs) {
if((x & 0xff)>>4 == 0) {
sb.append("0").append(Integer.toHexString(x & 0xff));
} else {
sb.append(Integer.toHexString(x & 0xff));
}
}
return sb.toString();
}

方法二、
String  contentMd5 = BinaryUtil.toBase64String(BinaryUtil.calculateMd5(content.getBytes()));

Java-生成字符串的MD5值的更多相关文章

  1. java生成字符串的MD5值

    下面的代码实现了MD5值的生成: public class MD5Test2 { public static void main(String[] args) { System.out.println ...

  2. MD5算法【计算文件和字符串的MD5值】

    1. MD5算法是一种散列(hash)算法(摘要算法,指纹算法),不是一种加密算法(易错).任何长度的任意内容都可以用MD5计算出散列值.MD5的前身:MD2.MD3.MD4.介绍工具:CalcMD5 ...

  3. JAVA中获取文件MD5值的四种方法

    JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...

  4. 教你使用python获得字符串的md5值

    最近需要使用python获取字符串的md5值. 今天把代码贴出来和大家分享一下. 01 #!/usr/bin/env python 02 # -*- coding: cp936 -*- 03 impo ...

  5. 生成文件的MD5值

    import hashlib #########测试################# m = hashlib.md5() m.update(b"hello") m.update( ...

  6. linux下md5sum用法 (查看文件或字符串的md5值)

    MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5 全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长 ...

  7. java生成字符串md5函数类(javaSE)

    //实现生成MD5值 import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.B ...

  8. JAVA生成文件的md5校验值

    这里使用了lombok打印日志,也可以不用 import java.io.File; import java.io.FileInputStream; import java.io.IOExceptio ...

  9. java生成字符串md5函数类

    import java.security.MessageDigest; /** * Md5 工具 */ public class Md5Util { private static MessageDig ...

  10. JAVA中获取文件MD5值的方法

    1 DigestUtils.md5Hex(new FileInputStream(path)); 如果你只需要使用标准的MD5,其实一行代码就够了,JAVA自带的commons-codec包就提供了获 ...

随机推荐

  1. ES5新增语法

    ES5中给我们新增了一些方法,可以很方便的操作数组或者字符串,这些方法主要包括:数组方法.字符串方法.对象方法. 1. 数组方法 迭代(遍历)方法:forEach() .map().filter(). ...

  2. Fedora 设置 core 文件路径

    sudo vim /etc/sysctl.conf 输入 kernel.core_pattern=core.%p sudo /lib/systemd/systemd-sysctl 使修改生效 cat ...

  3. jQuery组织后续事件 事件冒泡 事件委托 键被按下 批量操作 hover input 事件

    1. jQuery绑定事件的方式 1. $('').click(function(){}) 2. $('').on('click', function(){}) 2. 阻止后续事件执行 1. retu ...

  4. navicat 查看,设计并导出数据库 ER图

    转载请注明出处: 1. navicat 查看 ER 图,有两种方式: 第一种:选中数据库,并右键点击选中逆向数据库到模型. 第二种:可以在工具栏点击查看,选中 ER,打开 某数据库,便会展示 该数据库 ...

  5. RSA 加密,解密,签名,验签

    一.RSA加密简介 RSA加密是一种非对称加密.可以在不直接传递密钥的情况下,完成解密.这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险. 是由一对密钥来进行加解密的过程,分别称为公钥和 ...

  6. idea 配置 service 服务,多模块同时启动

    转载请注明出处: 1,打开IDEA项目 .idea 下 的workspace.xml 2,查找"RunDashboard" 节点 3,添加如下内容 <option name= ...

  7. 在Linux上安装和使用免费版本的PyMol

    技术背景 PyMol是一个类似于VMD的分子可视化工具,也是在PyQt的基础上开发的.但是由于其商业化运营,软件分为了教育版.开源版和商业版三个版本.其中教育版会有水印,商业版要收费,但是官方不提供开 ...

  8. [转帖]第24/24周 数据库维护(Database Maintenance)

    https://www.cnblogs.com/woodytu/p/4795542.html 哇哦,光阴似箭!欢迎回到性能调优培训的最后一期.今天我会详细讲下SQL Server里的数据库维护,尤其是 ...

  9. [转帖]使用 EXISTS 代替 IN 和 inner join

      在使用Exists时,如果能正确使用,有时会提高查询速度: 1,使用Exists代替inner join 2,使用Exists代替 in 1,使用Exists代替inner join例子: 在一般 ...

  10. [转帖]VLAN与三层交换机

    目录 一.VLAN概述与优势 二.Trunk的作用 三.IEEE 802.1q 四.VLAN转发 五.Trunk的配置 六.单臂路由概述 七.三层交换机实现VLAN之间通信的原理 八.实验一 九.实验 ...