aws s3列出的文件夹和文件仅适用于顶级(第一)Java

时间:2019-06-27 16:53:31

标签: java amazon-web-services amazon-s3

我正在使用AWS S3。我想使用get s3仅列出顶级文件夹和文件。在特定路径中: 例如,假设我想获取存储桶中顶层的内容。

我内部具有以下文件结构:

{
    "@context": "https://schema.org/",
    "@type": "WebSite",
    "name": "New World Productions",
    "url": "https://www.newworldproductions.net/",
    "potentialAction": {
        "@type": "SearchAction",
        "target": "https://www.newworldproductions.net/{search_term_string}Video, Production, Services, Marketing, Minneapolis, Minnesota, Corporate Videos, Commercial Videos",
        "query-input": "required name=search_term_string"
    }
}

我只想获取第一级的列表:

photos/2018/photo01.jpg
photos/2018/photo02.jpg
photos/2018/photo03.jpg
photos/2018/photo04.jpg
photos/2019/
docs/doc01.doc
docs/doc02.doc
random_file.txt

对于这些,我想从对象摘要结果中获取信息。

所以我试图这样做:

photos/
docs
random_file.txt

我将获得所有文件和文件夹的总列表。 我尝试使用withPrefix和withDelimiter来组合结果,但是由于需要获取

,因此无法正常工作

1 个答案:

答案 0 :(得分:0)

AWS S3的数据模型实际上是一个简单的层次结构;没有“顶层文件夹”或“子文件夹”的概念。控制台只能通过使用/作为分隔符并在文件夹名称中查找前缀来推断结构。 (see AWS Documentation)。

您将添加自己的逻辑以查看文件名和结构,并推断出逻辑文件夹结构是什么。