OBS JAVA SDK 实践3:列举指定目录下的所有文件、列举指定目录下的文件和子目录

举报
chongchongly 发表于 2019/06/21 14:19:06 2019/06/21
【摘要】 OBS JAVA SDK 实践3:列举指定目录下的所有文件、列举指定目录下的文件和子目录1 背景介绍 & 效果展示可以通过JAVA SDK,列举指定目录下的所有文件,也可以列举指定目录下的文件和子目录,效果如下。图1 指定目录share/下的所有文件图2 列举指定目录下的所有文件图3 列举指定目录下的文件和子目录2 java代码参考(列举指定目录下的文件和子目录)前提:需...

OBS JAVA SDK 实践3:列举指定目录下的所有文件、列举指定目录下的文件和子目录

1      背景介绍 & 效果展示

可以通过JAVA SDK,列举指定目录下的所有文件,也可以列举指定目录下的文件和子目录,效果如下。

1 指定目录share/下的所有文件

图片.png

2 列举指定目录下的所有文件

图片.png

3 列举指定目录下的文件和子目录

图片.png

2      java代码参考(列举指定目录下的文件和子目录)

前提:

需要先下载OBS最新的JAVA SDK,参考官网链接:https://developer.huaweicloud.com/sdk?OBS,并在自己的项目中导入SDK中的JAR包。

          

String endPoint = "https://your-endpoint";

                   String ak = "*** Provide your Access Key ***";

                   String sk = "*** Provide your Secret Key ***";

                  

                   // 创建ObsClient实例

                   ObsClient obsClient = new ObsClient(ak, sk, endPoint);

                                     

                   ListObjectsRequest request = new ListObjectsRequest("chongchongtest");

                   // 设置文件夹对象名"share/"为前缀

                   request.setPrefix("share/");

                   request.setMaxKeys(1000);

 

                   ObjectListing result;

 

                   System.out.println("Objects:");

                   do{

                       result = obsClient.listObjects(request);

                       for (ObsObject obsObject : result.getObjects())

                       {

                           System.out.println("\t" + obsObject.getObjectKey());

                       }

                       System.out.println("------------------------------");

                       request.setMarker(result.getNextMarker());

                   }while(result.isTruncated());

3      java代码参考(列举指定目录下的所有文件)

前提:

需要先下载OBS最新的JAVA SDK,参考官网链接:https://developer.huaweicloud.com/sdk?OBS,并在自己的项目中导入SDK中的JAR包。

String endPoint = "https://your-endpoint";

                   String ak = "*** Provide your Access Key ***";

                   String sk = "*** Provide your Secret Key ***";

                  

                   // 创建ObsClient实例

                   ObsClient obsClient = new ObsClient(ak, sk, endPoint);

                  

                   ListObjectsRequest request = new ListObjectsRequest("chongchongtest");

                   // 设置文件夹对象名"share/"为前缀

                   request.setPrefix("share/");

                   request.setDelimiter("/");

                   request.setMaxKeys(500);

 

                   ObjectListing result;

 

                   // 列举文件

                   System.out.println("Objects:");

                   do{

                       result = obsClient.listObjects(request);

                       for (ObsObject obsObject : result.getObjects())

                       {

                           System.out.println("\t" + obsObject.getObjectKey());

                       }

                       System.out.println("------------------------------");

                       request.setMarker(result.getNextMarker());

                   }while(result.isTruncated());

                  

                   // 列举子目录

                   System.out.println("\nFolder:");

                   do{

                       result = obsClient.listObjects(request);

                       for (String commonPrefix : result.getCommonPrefixes())

                       {

                           System.out.println("\t" + commonPrefix);

                       }

                       System.out.println("------------------------------");

                       request.setMarker(result.getNextMarker());

                   }while(result.isTruncated());

4      附录链接

OBS JAVA SDK 列举对象其它使用方法,官网参考链接:https://support.huaweicloud.com/sdk-java-devg-obs/zh-cn_topic_0142815500.html


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。