Хотя код, написанный в ответе Маурисио, будет работать - и его точка зрения о потоках, конечно, верна - Amazon предлагает более быстрый способ сохранения файлов в их SDK. Я не знаю, было ли это доступно в 2011 году или нет, но сейчас.
AmazonS3Client s3Client = new AmazonS3Client(myCredentials);
File localFile = new File("localFilename");
ObjectMetadata object = s3Client.getObject(new GetObjectRequest("bucket", "s3FileName"), localFile);