java - java - 如何在java中将S3对象列表从一个文件夹移动/复制到文件夹?
问题描述
我想将 S3 对象列表(给定文件夹中的所有 S3 对象)从一个文件夹复制/移动到同一个存储桶中的另一个文件夹。我可以为 on object 编写代码,如下所示。
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;
}
我认为应该通过制作该给定文件夹的对象列表并将列表复制到目的地来完成。我希望逻辑是这样,但我在编码部分遇到了麻烦。
解决方案
对 Amazon S3的copyObject()
API 调用只允许复制一个对象。您将需要遍历对象列表并单独复制每个对象。
您将需要listObjectsV2()
调用来获取现有对象的列表,然后调用copyObject()
它们中的每一个。
推荐阅读
- api - Julia API 调用 Alpaca 交易收到 HTTP/1.1 401 Unauthorized
- android - Android的这个post-UrlRequest如何转换成IOS?
- r - 安装包“ggplot2”有非零退出状态?
- amazon-web-services - AWS cloud9 上的 Hello World - 无法使用 PHP 内置服务器访问站点
- r - 将时间序列多行 x 轴绘制为日期
- android - 在android中的自定义底部导航栏中更改图标和文本的对齐方式
- javascript - 通过 TableExport.js 将表格上传到 Excel 时保持样式格式
- android - YouTubePlayerView Android - 显示结束屏幕
- hibernate - 使用具有一对多关系的 JPA 映射实体,如何添加连接条件
- r - 如何在 Shiny 上显示本地存储的多张图片(png)