2016-02-29 141 views
0

我是S3的新手。我需要从S3中获取一个文件,对其进行更新并将其存回S3,因此我需要在现有模块中获取此文件的最新时间;如果java的答案是好的。如何在java中获取S3中的文件的最新时间

+2

欢迎SO,请有点更具体的时候提出问题:你有什么试过,你期望什么,等等。请参阅[如何问](http://stackoverflow.com/help/how-to-ask) – Nehal

+0

我必须更新现有的文件S3所以为此我需要文件的最新更新时间,以便我没有多余的条目 –

回答

0

这会获取存储桶中的对象列表。这还打印出每个对象的名称,文件大小和上次修改日期。

ObjectListing objects = conn.listObjects(bucket.getName()); 
do { 
    for (S3ObjectSummary objectSummary : objects.getObjectSummaries()) { 
      System.out.println(objectSummary.getKey() + "\t" + 
        ObjectSummary.getSize() + "\t" + 
        StringUtils.fromDate(objectSummary.getLastModified())); 
    } 
    objects = conn.listNextBatchOfObjects(objects); 
} while (objects.isTruncated()); 

的输出将看起来像这样:

myphoto1.jpg 251262 2011-08-08T21:35:48.000Z 
myphoto2.jpg 262518 2011-08-08T21:38:01.000Z 

价为S3的例子包括上面一个(列表A BUCKET内容),是在http://docs.ceph.com/docs/master/radosgw/s3/java/

相关问题