在java中,如何将S3对象列表从一个文件夹移动/复制到另一个文件夹?
我想将S3对象列表(给定文件夹中的所有S3对象)从一个文件夹复制/移动到同一个bucket中的另一个文件夹。我可以为on对象编写如下代码在java中,如何将S3对象列表从一个文件夹移动/复制到另一个文件夹?,java,amazon-web-services,amazon-s3,Java,Amazon Web Services,Amazon S3,我想将S3对象列表(给定文件夹中的所有S3对象)从一个文件夹复制/移动到同一个bucket中的另一个文件夹。我可以为on对象编写如下代码 public static S3Response copySingleFile(S3Request s3Request) { S3Validation.validateCopyMoveArgs(s3Request); CopyObjectRequest copyObjectRequest=new CopyObjectReques
public static S3Response copySingleFile(S3Request s3Request) {
S3Validation.validateCopyMoveArgs(s3Request);
CopyObjectRequest copyObjectRequest=new CopyObjectRequest(s3Request.getBucketName(), s3Request.getSourcekey(), s3Request.getBucketName(), s3Request.getDestKey());
AWSClient.getS3Client().copyObject(copyObjectRequest);
return response;
}
我认为应该通过列出给定文件夹的对象并将列表复制到目标来完成。我希望逻辑是这样的,但我在编码部分遇到了麻烦 对AmazonS3的copyObject()
API调用只允许复制一个对象。您将需要遍历对象列表并分别复制每个对象
您需要一个
listObjectsV2()
调用来获取现有对象的列表,然后为每个对象调用copyObject()
。测试时它做了什么?您得到了什么错误?此代码适用于单个对象。它很好用。我无法修改多个对象的代码。是否必须删除原始对象?请检查此处的答案: