oky*_*eni 8 java md5 amazon-s3 md5sum
我获得了本地文件的MD5,但它与Amazon S3中"相同"文件的MD5(eTag)不同.我想要实现的是弄清楚我在S3中的最新文件是否与我本地的文件相同.如果我无法比较MD5,那我该怎么做呢?
从本地文件生成MD5(截断代码):
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] md5 = Files.getDigest(localFile, md);
String hashtext = DigestUtils.md5Hex(md5);
Run Code Online (Sandbox Code Playgroud)
从S3(截断代码)中检索MD5(eTag):
ObjectListing objectListing = s3.listObjects(new ListObjectsRequest().withBucketName(bucketName));
List<S3ObjectSummary> objectSummaries = objectListing.getObjectSummaries();
for(S3ObjectSummary objectSummary : objectSummaries) {
String MD5 = objectSummary.getETag();
}
Run Code Online (Sandbox Code Playgroud)
PS:我使用org.apache.commons.codec.digest.DigestUtils和com.google.common.io.Files库.
Bru*_*hée 11
String hashtext = DigestUtils.md5Hex(md5);
Run Code Online (Sandbox Code Playgroud)
是否计算刚刚计算出的MD5的MD5.请参阅DigestUtils.md5Hex文档.
hashtext 实际上是MD5(MD5(文件))而不是MD5(文件).
| 归档时间: |
|
| 查看次数: |
9398 次 |
| 最近记录: |