OBS JAVA SDK 实践3:列举指定目录下的所有文件、列举指定目录下的文件和子目录
OBS JAVA SDK 实践3:列举指定目录下的所有文件、列举指定目录下的文件和子目录
1 背景介绍 & 效果展示
可以通过JAVA SDK,列举指定目录下的所有文件,也可以列举指定目录下的文件和子目录,效果如下。
图1 指定目录share/下的所有文件
图2 列举指定目录下的所有文件
图3 列举指定目录下的文件和子目录
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
- 点赞
- 收藏
- 关注作者
评论(0)