在存储桶文件夹中,我可以从谷歌存储中获取 pdf 文件。我如何从那里下载所有文件。 例如,对于单个文件。
public InputStream getBlobBytesArray() {
String bucketName ="XYZ";
String filename="abc.pdf";
Blob blob = getStorageInstance().get(BlobId.of(bucketName, filename));
return new ByteArrayInputStream(getStorageInstance().readAllBytes(blob.getBlobId()));
}
在存储桶内,我创建了一个文件夹,其中存储了 5 个 pdf。 如何获取它们'
public MultipartFile getMultiFileFromCloud() {
// TODO Auto-generated method stub
String bucketName = "XYZ";
Blob fileBlob = getStorageInstance().get(BlobId.of(bucketName, filepath));
MultipartFile multipartFile = new CommonsMultipartFile( new ByteArrayInputStream(fileBlob.getContent(BlobSourceOption.generationMatch())));
return null;
}
我已经试过了,没有任何效果。提前致谢。
答案 0 :(得分:1)
Google 存储提供了查找文件夹内所有对象的方法。
public InputStream getBlobBytesArray() {
String bucketName ="XYZ";
Bucket bucket = storage.get(bucketName);
Page<Blob>blobs=bucket.list(Storage.BlobListOption.prefix("folderPath/1"));
}
现在这对我来说很好。
答案 1 :(得分:0)
您只能通过文件全名的前缀(包括路径)来搜索文件。如果您要查找后缀或内容类型元数据,则需要获取所有文件并使用代码选择所需内容(例如名称中的 *.pdf 扩展名)。
那你就不能一个命令下载了,只能一个一个下载。