1

我想在 s3 文件中读取最后修改或创建的日期。我已经看到列出所有文件的编码,但我想找到特定文件的修改日期。

我用这个编码来检索 s3 文件

S3Object s3ProfileObject = s3Client.getObject(new GetObjectRequest(srcBucket, fullProfilePath));

InputStream profileData = s3ProfileObject.getObjectContent();

SONObject rawProfileObject = (JSONObject)jsonParser.parse( new InputStreamReader(profileData, "UTF-8"));

是否可以使用它来阅读它s3ProfileObject

4

1 回答 1

1

你需要使用S3ObjectSummary它。是它的文档。以下是示例代码(来自此处):

final AmazonS3 s3 = AmazonS3ClientBuilder.defaultClient();
ListObjectsV2Result result = s3.listObjectsV2(bucket_name);
List<S3ObjectSummary> objects = result.getObjectSummaries();
for (S3ObjectSummary os: objects) {
    System.out.println("* " + os.getKey());
}

S3ObjectSummary,您可以提出另一个请求并获取S3Object.

如果要包含特定文件或具有特定前缀的文件,则可以将 `` 对象与withPrefix方法一起使用以及请求,例如:

ListObjectsV2Request listObjectsV2Request = new ListObjectsV2Request()
    .withBucketName("test-bucket")
    .withPrefix("file-prefix");

ListObjectsV2Result 结果 = s3client.listObjectsV2(listObjectsV2Request);

这是用于ListObjectsV2Request.

于 2019-01-30T09:17:51.947 回答