原文:http://blog.csdn.net/earthhour/article/details/51188437

通过main方法测试得到一个加密值,通过servlet request调用得到一个加密值,都是加密相同的汉字,但是结果不同。

如果是加密英文,则不会有这种问题。

原因就在于汉字编码,在加密时设置一下编码UTF-8,问题解决。

public static String EncoderByMd5(String str) {  String result = "";  MessageDigest md5 = null;  try {  md5 = MessageDigest.getInstance("MD5");  // 这句是关键  md5.update(str.getBytes("UTF-8"));  } catch (NoSuchAlgorithmException e) {  // TODO Auto-generated catch block
        e.printStackTrace();  } catch (UnsupportedEncodingException e) {  // TODO Auto-generated catch block
        e.printStackTrace();  }  byte b[] = md5.digest();  int i;  StringBuffer buf = new StringBuffer("");  for (int offset = 0; offset < b.length; offset++) {  i = b[offset];  if (i < 0)  i += 256;  if (i < 16)  buf.append("0");  buf.append(Integer.toHexString(i));  }  result = buf.toString();  return result;
}  

Java汉字md5值不一致问题相关推荐

  1. java 获取md5值报错_java获取文件的MD5值

    package com.sichang.util; import java.io.File; import java.io.FileInputStream; import java.math.BigI ...

  2. Java生成MD5值

    MD5是什么 message-digest algorithm 5(信息-摘要算法).经常说的"MD5加密",就是它→信息-摘要算法. 在下载一下东西时,经常在一些压缩包属性里,看 ...

  3. linux 文件md5,Linux下计算文件的MD5值

    脚本功能 脚本使用Perl编写,计算文件的MD5值 脚本用途 服务器在安装完操作系统后,计算PATH变量里面所有的二进制文件的MD5.计算单个文件MD5值.计算某个目录(包括子目录)下所有的文件的MD ...

  4. js计算出来的文件md5值跟java计算出来的不一致

    最近在项目中遇到了大文件分割上传问题,为了保证上传的文件的有效性需要确保分割的文件上传首先要成功,因此用到了md5加密,在js代码中上传文件之前将要上传的文件内容进行md5加密,然后作为其中一个参数传 ...

  5. java excel md5_EXCEL VBA计算带汉字的字符串的MD5值(VBA转UTF-8保存)

    操作思路: 1.使用 ADODB.stream 把字符串转换为UFT-8的编码集存储到文件 AA 2.使用调用windows命令行CertUtil -hashfile c:\11\AA md5 对文件 ...

  6. Java 获取文件md5值校验文件

    假如我们想校验两个文件网络传输中是否改变了,或者校验两个文件是否一致可以使用md5校验. 代码: import java.io.FileInputStream; import java.io.Inpu ...

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

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

  8. java通过比对MD5值判断是否是相同图片

    一:通过比对MD5值 public static String getFileMD5(File file) {if (!file.isFile()) {return null;}// 创建Messag ...

  9. java 修改文件MD5值

    java 修改文件Md5 介绍 代码示例 介绍 很多平台在上传文件或图片时,用MD5做了去重校验,已经传过的文件就不让传了,但有时候我们偏偏就想重复传.MD5是加密算法的一种,是对文件的加密,那么想办 ...

  10. Java如何获取MD5值

    MD5,Message Digest Algorithm 5,是一种被广泛使用的信息摘要算法,可以将给定的任意长度数据通过一定的算法计算得出一个 128 位固定长度的散列值.如百科介绍,MD5 具有如 ...

最新文章

  1. 男孩子学计算机和学医哪个好,你认为学医好还是读211大学的电子信息好?
  2. Android和iOS那个好?
  3. kubernetes安装_kubernetes安装教程之三:安装kubeadm
  4. 你成为不了架构师的原因!!!
  5. 牛客多校8 - Interesting Computer Game(并查集)
  6. php伪静态后无法获得url中参数_php runtime、http web中rewrite浅解和方案
  7. linux c显示日期,Linux C判断日期格式是否合法
  8. 【嵌入式Linux】嵌入式Linux应用开发基础知识之串口应用编程
  9. RocketMQ之消费者并发消费源码解析
  10. 有幸为鲍勃大叔的封山之作《匠艺整洁之道》写了推荐序,顺手赠书!
  11. 用户体验的要素pdf_用户运营思路(35份)
  12. 红米1s 一键root测试
  13. C++中2、8、10、16进制数字的表示及计算
  14. Maven的基本概念(三)
  15. 小米手机系统服务组件是干什么的_小米手机的云服务也太好用了吧?!手机丢了完全不用怕了...
  16. Head First设计模式笔记
  17. 人类算力天花板?1750 亿参数的 AI 模型 GPT-3 引爆硅谷
  18. 横空出世,互联网的前世今生
  19. 计算机仿真题液相色谱,毛细管电泳分离过程计算机仿真研究.pdf
  20. 【学习笔记】嵌入式三级

热门文章

  1. getchar() 和 scanf(%c)的区别
  2. 操作系统--存储管理的任务
  3. Linux的段错误调试方法
  4. 如何使用Hasu USB to USB Controller Converter刷写tmk固件交换Caps和Ctrl
  5. Python 数据结构 树
  6. 实现WP7下ListBox分页加载接口
  7. centos禁ping
  8. UML类图各符号含义
  9. PHP Filter 简介
  10. Codeforces Round #503 (by SIS, Div. 2)