为了账号安全,请及时绑定邮箱和手机立即绑定

有没有办法使用 Android AWS SDK 从 Amazon S3 存储桶读取文件上下文

有没有办法使用 Android AWS SDK 从 Amazon S3 存储桶读取文件上下文

繁星点点滴滴 2023-08-04 16:23:46
从文档中我可以看到您可以下载文件,但我想知道是否有一种方法可以从 Amazon S3 存储桶中获取文本文件的内容,而不必在本地存储文件?
查看完整描述

1 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

是的,您可以使用getObject()的实例AmazonS3来下载文件:


String bucketName = "BUCKET_NAME";

String key = "KEY_OF_OBJECT";


AmazonS3 s3Client = AmazonS3ClientBuilder.standard()

                    .withRegion(Regions.DEFAULT_REGION)

                    .withCredentials(new ProfileCredentialsProvider())

                    .build();


System.out.println("Downloading an object");

S3Object fullObject = s3Client.getObject(new GetObjectRequest(bucketName, key));

System.out.println("Content-Type: " + fullObject.getObjectMetadata().getContentType());

System.out.println("Content: ");


// fullObject.getObjectContent() is an InputStream 


BufferedReader reader = new BufferedReader(new InputStreamReader(fullObject.getObjectContent()));

String line = null;

while ((line = reader.readLine()) != null) {

    System.out.println(line);

}

如果您只需要部分数据,可以使用修饰符withRange()onGetObjectRequest()创建范围请求。


查看完整回答
反对 回复 2023-08-04
  • 1 回答
  • 0 关注
  • 203 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信