获取目录容量概览
更新时间:2022-09-14
用户可以通过如下代码获取Bucket或指定前缀下的当前容量、Object数、文件数。 此处文件的含义就是指普通的文件,不包括文件夹,更不包括分隔符逻辑意义上的目录。object就是实际存储在bucket的key数量。即文件数等于object数减去带分隔符结尾的object数,比如,当前目录下有9个object,其中5个是文件夹,4个文件,那么查到的文件数就是4,object数就是9。
public void stateSummary(BosClient client, String bucketName, String prefix) {
// 获取Bucket下的当前容量、Object数、文件数
StateSummaryResponse response = client.stateSummary(bucketName);
System.out.println("currSize : " + response.getTotalSize());
System.out.println("objectsCount : " + response.getObjectsCount());
System.out.println("filesCount : " + response.getFilesCount());
}
获取带有指定前缀的object容量、Object数、文件数:
public StateSummaryResponse stateSummaryWithPrefix(BosClient client, String bucketName, String prefix) {
StateSummaryRequest request = new StateSummaryRequest();
request.setBucketName(this.bucketName);
request.setPrefix("dir/x");
StateSummaryResponse response = client.stateSummary(request);
return response;
}