.net - 从 amazon s3 存储桶子文件夹 .Net 获取文件

标签 .net amazon-web-services amazon-s3

我正在从亚马逊 s3 下载一些文件,如下所示

 private static readonly IAmazonS3 _amazonS3Client = AWSClientFactory.CreateAmazonS3Client(
        AccessKey,
        SecretKey,
        Config
        );
  var request = new ListObjectsRequest {BucketName = BucketName};

        ListObjectsResponse response = _amazonS3Client.ListObjects(request);
        foreach (S3Object o in response.S3Objects)
        {
            var objRequest = new GetObjectRequest
            {
                BucketName = BucketName,
                Key = o.Key

            };
            GetObjectResponse objResponse = _amazonS3Client.GetObject(objRequest);
            objResponse.WriteResponseStreamToFile(ConfigurationManager.AppSettings["TargetLocation"] + o.Key);
        }

这很好用,现在我已经在存储桶中创建了一个文件夹,并且我只想下载该存储桶中的文件。任何人都可以指出实现这一目标的正确方法吗?

最佳答案

只需将您的存储桶名称设置为:存储桶名称/文件夹名称。

因此,如果您有一个名为“MyBucket”的存储桶,并且该存储桶内有一个名为 MyFolder 的文件夹,那么您会这样做:

var objRequest = new GetObjectRequest
            {
                BucketName = "MyBucket/MyFolder",
                Key = o.Key

            };

关于.net - 从 amazon s3 存储桶子文件夹 .Net 获取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30707867/

相关文章:

iphone - Amazon S3 在 PUT 上出现 501 错误

java - 如何使用 Picasso 使用动态 URL 缓存来自 S3 存储桶的图像?

amazon-s3 - PUT/同步所需的 s3cmd S3 权限

c# - Action<> 对象作为函数的参数并使用它

c# - 仅使用 C#/.NET 重命名 .Zip 条目?

java - .NET相当于Java的TreeSet操作tailSet和headSet吗?

amazon-web-services - EC2 - 从 VPC 中删除 EC2

javascript - 通过node js从本地同时上传多个文件到s3桶

audio - 创建.ram,.wvx,.m3u文件以托管和流式传输音频/视频文件的优势?

c# - 如何删除字符串中的任何 utf8mb4 字符