论坛首页 编程语言技术论坛

Java 自带MD5 校验算法,别上当

浏览 47125 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-10-23  
MD5本来就耗时,这不是MD5的错,而是使用者的错,查看文件是否更改应该用:
File类的public long lastModified() 吧?

而且如果用MD5的方式,即使更改了也不知道,如果更改前后的内容一致的话。
0 请登录后投票
   发表时间:2012-10-23  
OpenMind 写道
MD5本来就耗时,这不是MD5的错,而是使用者的错,查看文件是否更改应该用:
File类的public long lastModified() 吧?

而且如果用MD5的方式,即使更改了也不知道,如果更改前后的内容一致的话。


嗯,我只是觉得这不是NIO的应用场景。
0 请登录后投票
   发表时间:2012-10-23   最后修改:2012-10-23
ktnd 写道
两者似乎没多大的区别吧
....
NIO的版本性能似乎没什么优势


优势不在这里,这么用是体现不出太大的区别。
大吞吐量的时候就比较有用,主要是是在nio那一套各种类上面比较有用。套接字里面就比较好用。

另外 ByteBuffer 里面存的也是 byte[] 不是,只是比较方便重用和拷贝之类的。不过还是有 直接与 非直接缓冲区的,还是会有很大的影响的。

不过文件拷贝的时候还是有用的,你拷贝大文件的时候,nio的 transferFrom transferTo 是全速做功,速度比用缓冲快。
0 请登录后投票
   发表时间:2012-10-23  
另外我这么用只是方便,纯属偷懒,不用去管理神马字节神马的。
0 请登录后投票
   发表时间:2012-10-23  
ktnd 写道
OpenMind 写道
MD5本来就耗时,这不是MD5的错,而是使用者的错,查看文件是否更改应该用:
File类的public long lastModified() 吧?

而且如果用MD5的方式,即使更改了也不知道,如果更改前后的内容一致的话。


嗯,我只是觉得这不是NIO的应用场景。

哈哈,我后来就是改成了lastModified来做的,爽啊,哈
0 请登录后投票
   发表时间:2012-10-23  
chimer 写道
ktnd 写道
两者似乎没多大的区别吧
....
NIO的版本性能似乎没什么优势


优势不在这里,这么用是体现不出太大的区别。
大吞吐量的时候就比较有用,主要是是在nio那一套各种类上面比较有用。套接字里面就比较好用。

另外 ByteBuffer 里面存的也是 byte[] 不是,只是比较方便重用和拷贝之类的。不过还是有 直接与 非直接缓冲区的,还是会有很大的影响的。

不过文件拷贝的时候还是有用的,你拷贝大文件的时候,nio的 transferFrom transferTo 是全速做功,速度比用缓冲快。

我觉得NIO也是有他的适用范围的,像socket,有时候旧IO比NIO更好用
0 请登录后投票
   发表时间:2012-10-23  
此例中用到 NIO 纯属方便快捷好阅读,无其他原因,请不要纠结NIO和IO了,此例中无大差。仅此而已。NIO的好处此例体现不了。
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics