【问题标题】:How to copy multiple files using aws s3 sdk如何使用 aws s3 sdk 复制多个文件
【发布时间】:2020-09-06 09:18:52
【问题描述】:

我想使用 aws s3 sdk java 将多个文件从一个文件夹复制到另一个文件夹。我可以看到提供的方法 copyObject() 是针对单个文件的。 以下是文档中提供的代码。

 CopyObjectRequest copyObjectRequest = new CopyObjectRequest(getBucketName(),
    "srcFolderName" + "/" + key, getBucketName(), "targetFolderName" + "/" + key);
ObjectMetadata metadata = new ObjectMetadata();
metadata.setContentDisposition("attachment");
copyObjectRequest.setNewObjectMetadata(metadata);
getS3Client().copyObject(copyObjectRequest);

如何给多个文件路径?

例如:来源

  1. A/srcFolderName/123/file.txt
  2. A/srcFolderName/456/file.txt
  3. A/srcFolderName/789/file.txt
  4. A/srcFolderName/112/file.txt
  5. A/srcFolderName/101/file.txt

需要复制的文件是1,2,5。

复制后

  1. A/targetFolderName/123/file.txt
  2. A/targetFolderName/456/file.txt
  3. A/targetFolderName/101/file.txt

【问题讨论】:

    标签: java amazon-web-services amazon-s3 aws-sdk


    【解决方案1】:

    您不能通过一次 API 调用复制多个对象。

    CopyObject API 调用只会复制一个对象

    但是,您可以通过多个线程发出多个 API 调用,以便并行完成操作。

    【讨论】:

      猜你喜欢
      • 2019-01-13
      • 2021-02-25
      • 2020-01-05
      • 2015-04-23
      • 2017-11-08
      • 2011-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多