Список всех каталогов из s3 с использованием клиента s3 Java (ответ)

Я хотел перечислить каталоги в определенном сегменте, но S3client не возвращает каталоги, а объекты, с которыми я боролся, я ничего не мог найти в Google, но после некоторых исследований я получил ответы, поэтому я решил разместить свое решение здесь

      private static List<String> listDirectoryFromS3FS(URI baseURI)
{
    UnderFsObjectMeta underFsObjectMeta = new UnderFsObjectMeta(baseURI);
    S3Client client = S3Client.builder().region(Region.US_EAST_1).build();
    ListObjectsV2Request request = ListObjectsV2Request.builder().bucket(underFsObjectMeta.m_sBucketName)
            .prefix(underFsObjectMeta.m_sDirectoryPath).delimiter(Utility.PART_FILE_SEPARATOR).build();
    List<CommonPrefix> prefixes = client.listObjectsV2(request).commonPrefixes();

    List<String> listDirectories = new LinkedList<>();
    for (CommonPrefix prefix:prefixes)
    {
        listDirectories.add(prefix.prefix());

    }

    return listDirectories;
}

0 ответов

Другие вопросы по тегам