8
をJava
に直接ダウンロードしてメモリにダウンロードしてもかまいませんか?s3オブジェクトをJavaのメモリに直接ダウンロードするには
をJava
に直接ダウンロードしてメモリにダウンロードしてもかまいませんか?s3オブジェクトをJavaのメモリに直接ダウンロードするには
使用Java用AWS SDK:
http://aws.amazon.com/sdkforjava/
とApache CommonsのIO:
は、次に、このようになります。
AmazonS3 s3 = new AmazonS3Client(credentials); // anonymous credentials are possible if this isn't your bucket
S3Object object = s3.getObject("bucket", "key");
byte[] byteArray = IOUtils.toByteArray(object.getObjectContent());
わからない何を「取り除く」という意味ですが、IO Utilsはオブジェクトの入力ストリームをバイト配列に変換し終えると、それを閉じます。オブジェクトをs3から削除したい場合は、次のように簡単です。
s3.deleteObject("bucket", "key");
ありがとうございました!これは追加のライブラリを使用する必要があります。バイト配列を取得するために入力ストリームをループする方が良いのではないでしょうか? – Manisha
@Manisha、http://stackoverflow.com/questions/1264709/convert-inputstream-to-byte-array-in-javaを参照してください。 –