我有一个如下的s3结构:
s3bucketname -> List of first level keys -> List of second level keys -> List of third keys -> Actual file。
我需要做的是,给定s3bucket的名称和第一级键和第三级键的条目,我需要符合此条件的所有文件的路径,即第二级键的某种通配符
有人能告诉我用java怎么做吗?
谢谢
发布于 2016-01-13 21:30:22
假设你的存储桶中有一个这样的层次结构:
"foo/bar/baz/sample1.txt"
"foo/bar/bash/sample2.txt"
"foo/bar/bang/sample3.txt"
"foo/boo/baz/sample4.txt"
"foo/boo/bash/sample6.txt"
"foo/boo/sample5.txt"
你知道第一个键是"foo“,第三个键是"baz",你可以用前缀值"foo/”和分隔符"/“调用listObjects() api,这将给你一个在公共前缀列表中有两个条目的ObjectListing,它们是"foo/bar/”和"foo/boo/“。然后,您可以将已知的第三个键"bash“附加到每个字符串中,并再次使用listObjects() api获取所有对象。
发布于 2016-01-16 19:12:38
坦率地说,最简单的方法是获得具有已知前缀的所有对象的列表。然后,让您的代码查看返回的键,以确定需要哪些键。这将减少对AWS的调用。
https://stackoverflow.com/questions/34766353
复制相似问题