2012-03-01 12 views
23

私は、Amazon S3のサンプルを見ていた、そしてサンプルが挿入/削除のためにそこにある...既存のAmazon S3オブジェクトを更新できますか?

しかし、私は新鮮なデータを持つ既存のブロブを更新したいです。基本的にコンテンツはテキストファイルであり、テキストは変更されています。私はS3オブジェクトに新しいテキストコンテンツを保存します。

Javaでこれを行うにはどうすればよいですか?

答えて

24

Amazon S3の既存のオブジェクトを更新することは、まず最初にオブジェクトを作成することと同じです。つまり、オブジェクトをアップロードする操作が全く同じで、既存のオブジェクトを上書きします(他の手段で保護されていない場合ステファンも言っている

AmazonS3 s3client = new AmazonS3Client(new PropertiesCredentials(
     S3Sample.class.getResourceAsStream(
       "AwsCredentials.properties"))); 
try { 
    System.out.println("Uploading a new object to S3 from a file\n"); 
    File file = new File(uploadFileName); 
    s3client.putObject(new PutObjectRequest(
          bucketName, keyName, file)); 

} catch (AmazonServiceException ase) { 
    System.out.println("Caught an AmazonServiceException, which " + 
      "means your request made it " + 
      "to Amazon S3, but was rejected with an error response" + 
      " for some reason."); 
    // ... error handling based on exception details 
} 
+9

がNO「部分ブロブ」更新がないことである:に、あなたがUpload an Object Using the AWS SDK for Javaでの完全なコードサンプルを見つけることができます

Using Bucket PoliciesまたはObject Versioning)などを介して、メインの部分が沸きます。ファイルの新しいコピー全体をアップロードする必要があります。 –

関連する問題