View a markdown version of this page

ディレクトリバケットからのオブジェクトのダウンロード - Amazon Simple Storage Service

ディレクトリバケットからのオブジェクトのダウンロード

次のコード例は、GetObject API オペレーションを使用して、Amazon S3 ディレクトリバケット内のオブジェクトからデータを (ダウンロードして) 読み取る方法を示しています。

SDK for Java 2.x
例

次のコード例は、AWS SDK for Java 2.x を使用して、ディレクトリバケット内のオブジェクトからデータを読み取る方法を示しています。

public static void getObject(S3Client s3Client, String bucketName, String objectKey) { try { GetObjectRequest objectRequest = GetObjectRequest .builder() .key(objectKey) .bucket(bucketName) .build(); ResponseBytes GetObjectResponse objectBytes = s3Client.getObjectAsBytes(objectRequest); byte[] data = objectBytes.asByteArray(); //Print object contents to console String s = new String(data, StandardCharsets.UTF_8); System.out.println(s); } catch (S3Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
SDK for Python
例

次のコード例は、AWS SDK for Python (Boto3) を使用して、ディレクトリバケット内のオブジェクトからデータを読み取る方法を示しています。

import boto3 from botocore.exceptions import ClientError from botocore.response import StreamingBody def get_object(s3_client: boto3.client, bucket_name: str, key_name: str) -> StreamingBody: """ Gets the object. :param s3_client: :param bucket_name: The bucket that contains the object. :param key_name: The key of the object to be downloaded. :return: The object data in bytes. """ try: response = s3_client.get_object(Bucket=bucket_name, Key=key_name) body = response['Body'].read() print(f"Got object '{key_name}' from bucket '{bucket_name}'.") except ClientError: print(f"Couldn't get object '{key_name}' from bucket '{bucket_name}'.") raise else: return body def main(): s3_client = boto3.client('s3') resp = get_object(s3_client, 'doc-example-bucket--use1-az4--x-s3', 'sample.txt') print(resp) if __name__ == "__main__": main()

次の get-object コマンド例は、AWS CLI を使用して Amazon S3 からオブジェクトをダウンロードする方法を示しています。このコマンドは、ディレクトリバケット bucket-base-name--zone-id--x-s3 からオブジェクト KEY_NAME を取得します。オブジェクトは、LOCAL_FILE_NAME という名前のファイルにダウンロードされます。このコマンドを実行するには、user input placeholders をユーザー自身の情報に置き換えます。

aws s3api get-object --bucket bucket-base-name--zone-id--x-s3 --key KEY_NAME LOCAL_FILE_NAME

詳細については、AWS CLI コマンドリファレンスの「get-object」を参照してください。