陪公主读书 2013-05-08 15:50 采纳率: 100%
浏览 282
已采纳

字符串的MD5值为什么和JAVA文件的编码有关呢?

[color=blue]
如果这样的话,那岂不MD5签名会出现误判的情况呀?

明明签名对了,但是因为客户端和服务器的编码格式不一样,判为错误
[/color]

  • 写回答

1条回答 默认 最新

  • yunzhu666 2013-05-08 15:59
    关注

    指定统一的编码,而不是使用系统默认编码。

    计算一个字符串MD5时,会先得到该字符串的byte数组,

    如果不手动指定编码会调用String->getBytes(),该方法的API说明如下:
    Encodes this {@code String} into a sequence of bytes using the platform's default charset, storing the result into a new byte array.

    所以,要调用String->getBytes(Charset charset)方法,通过指定统一的编码格式,就没有问题了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?