メニュー
Amazon Simple Storage Service
開発者ガイド (API Version 2006-03-01)

AWS SDK for .NET を使用したオブジェクトのコピー

以下のタスクは、高レベル .NET クラスを使用して、ファイルをアップロードする手順を示しています。この API には、データのアップロードを容易にするための、複数のバリエーション(オーバーロード)の Upload メソッドが用意されています。

オブジェクトのコピー

1

AmazonS3 クラスのインスタンスを作成します。

2

いずれかの AmazonS3.CopyObject を実行します。コピー元のバケット、コピー元のキー名、コピー先のバケット、コピー先のキー名などの情報を提供する必要があります。この情報は、CopyObjectRequest クラスのインスタンスを作成することによって指定します。

以下の C# コード例は、前述のタスクの例です。

Copy
static IAmazonS3 client; client = new AmazonS3Client(Amazon.RegionEndpoint.USEast1); CopyObjectRequest request = new CopyObjectRequest() { SourceBucket = bucketName, SourceKey = objectKey, DestinationBucket = bucketName, DestinationKey = destObjectKey }; CopyObjectResponse response = client.CopyObject(request);

次の C# コード例では、オブジェクトのコピーを作成します。コード内に実際のバケット名とオブジェクトキーを指定して更新する必要があります。作業サンプルを作成およびテストする方法については、「Amazon S3 .NET コード例の実行」を参照してください。

Copy
using System; using Amazon.S3; using Amazon.S3.Model; namespace s3.amazon.com.docsamples { class CopyObject { static string sourceBucket = "*** Bucket on which to enable logging ***"; static string destinationBucket = "*** Bucket where you want logs stored ***"; static string objectKey = "*** Provide key name ***"; static string destObjectKey = "*** Provide destination key name ***"; static IAmazonS3 client; public static void Main(string[] args) { using (client = new AmazonS3Client(Amazon.RegionEndpoint.USEast1)) { Console.WriteLine("Copying an object"); CopyingObject(); } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } static void CopyingObject() { try { CopyObjectRequest request = new CopyObjectRequest { SourceBucket = sourceBucket, SourceKey = objectKey, DestinationBucket = destinationBucket, DestinationKey = destObjectKey }; CopyObjectResponse response = client.CopyObject(request); } catch (AmazonS3Exception s3Exception) { Console.WriteLine(s3Exception.Message, s3Exception.InnerException); } } } }