[英]Get an S3Object from a GetObjectResponse in AWS Java SDK 2.0
In AWS Java SDK 1.x, I could get an S3Object
from an S3Client
like this.在 AWS Java SDK 1.x 中,我可以像这样从S3Client
获取S3Object
。
S3Object obj = mS3Client.getObject(pBucket, pKey);
I'm trying to replicate that functionality using AWS Java SDK 2.0 (and end up with an S3Object
), but the closest I can get is a GetObjectResponse
, and I can't find any simple method calls to turn the response into an S3Object
.我正在尝试使用 AWS Java SDK 2.0 复制该功能(并最终得到S3Object
),但我能得到的最接近的是GetObjectResponse
,我找不到任何简单的方法调用来将响应转换为S3Object
。
GetObjectResponse response = mS3Client.getObject(
GetObjectRequest.builder()
.bucket(pBucket)
.key(pKey)
.build())
.response();
How can I get an S3Object
from the 2.0 S3Client
, or build one from the GetObjectResponse
?我怎样才能得到一个S3Object
从2.0 S3Client
从,或建立一个GetObjectResponse
?
use ResponseInputStream.使用响应输入流。 Hope the below code solves your problem.希望下面的代码可以解决您的问题。
GetObjectRequest request = GetObjectRequest.builder()
.bucket("BucketName")
.key("key")
.build();
ResponseInputStream<GetObjectResponse> s3objectResponse = s3Client
.getObject(request);
BufferedReader reader = new BufferedReader(new InputStreamReader(s3objectResponse));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.