派森和java哪个好就业_用Python及PHP与Java解读同一数据,解结不同请问为什么?

测试代码及结果如下:

PHP:

echo md5(file_get_contents('test.torrent'));

//e699b0e7535cebc1b10de1613d6797fb

Python:

print hashlib.md5(open("test.torrent").read()).hexdigest()

#7cc752c88ae69677afe59ee7c3300e9d

Javascript:

var dragAndDrop = function(){

if (!window.File || !window.FileList || !window.FileReader) {

return false;

}

var ignoreDrag = function(e) {

e.originalEvent.stopPropagation();

e.originalEvent.preventDefault();

}

var drop = function(e) {

ignoreDrag(e);

var dt = e.originalEvent.dataTransfer;

var droppedFiles = dt.files;

$.each(droppedFiles, function(index, file) {

decodeFile(file);

});

}

$('body')

.on('dragenter', ignoreDrag)

.on('dragover', ignoreDrag)

.on('drop', drop);

};

var decodeFile = function(file) {

var fileReader = new FileReader();

var fileData = fileReader.readAsBinaryString(file);

fileReader.onload = function(){

var fileData = this.result;

console.log(CryptoJS.MD5(fileData));

}

}

dragAndDrop();

//393fe44680d69ea00fd0a4a2fb3fa8c5

根据你在问题评论中补充的信息,Python 2 版与 PHP 版的不同很容易理解了:

我做了一下测试,两种python的方法,一种javascript的方法,加一种是Linux shell命令,得出来的MD5都是一样的。PHP没测试,但我相信也应该一样。

python方法一:import md5

m = md5.new("xxx\n")

print m.hexdigest()

结果是:6de9439834c9147569741d3c9c9fc010

python方法二:import hashlib

h = hashlib.md5("xxx\n")

print h.hexdigest()

结果也是:6de9439834c9147569741d3c9c9fc010

javascript的MD5,我从这下载的:http://www.myersdaily.org/joseph/javascript/md5.js,第101行有个语法错误,加上var即可。得出的结果跟上面的结果一样。

Linux shell:md5sum

xxx回车后按ctrl + D

打印出来的结果同上。

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd20138.html

相关文章 Recommend

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值