我有安排在以下虚拟目录S3存储多种数据文件(CSV):获取所有桶的内容对象
s3://mybucketname/data/Type1/
桶名称:mybucketname
关键字前缀:/数据/类型1/
,我想将这些csv文件的内容与此存储桶+键 合并,并以字符串形式返回输出。代码 -
public string GetBucketContents(string bucketName)
{
string bucketContent = "";
ListObjectsRequest request = new ListObjectsRequest
{
BucketName = bucketName,
Prefix = "data/Type1/"
};
using (ListObjectsResponse response = amazonS3Client.ListObjects(request))
{
//Loop all objects in S3 bucket
foreach (S3Object s3Object in response.S3Objects)
{
//Get S3 object @ s3Object.Key
GetObjectRequest objectRequest = new GetObjectRequest().WithBucketName(bucketName).WithKey(s3Object.Key);
using (GetObjectResponse objectResponse = amazonS3Client.GetObject(objectRequest))
{
using (StreamReader reader = new StreamReader(objectResponse.ResponseStream))
{
bucketContent += reader.ReadToEnd();
}
}
}
}
return bucketContent;
}
我收到预期:-)
输出但是还是想确认是否有任何更好的(性能明智)的方式来实现这一目标?
谢谢!
我需要实现,使用代码:-( – user1552869 2012-08-01 08:58:59