Google 云存储库从 Cloudstorage 读取并下载到 local/on-prem?
Google Cloud storage library to read from Cloudstorage and download to local/on-prem?
我看到了从 Google 云端验证和读取 Buckets/Objects 的选项。
我如何将对象直接复制到我的 local/on-prem,下面的程序可能 运行?我看到一些方法,例如 downloadTo、blob 的 copyTo,但如果我没记错的话,它看起来像是 google 云本身内的 copy/download。 downloadTo 路径不允许我使用该路径配置服务器。
(注意 - 我知道 gsutil 命令,但如果可能的话,我希望它以编程方式下载文件)
StorageOptions options = StorageOptions.newBuilder().setProjectId(PROJECT_ID).setCredentials(GoogleCredentials.fromStream(new FileInputStream(PATH_TO_JSON_KEY))).build();
Storage storage = options.getService();
Blob blob = storage.get(BUCKET_NAME, OBJECT_NAME);
downloadTo
会下载到您执行代码的位置。
import com.google.cloud.storage.*;
import java.nio.file.Paths;
//other imports and setup before this
String bucketName = "MY-BUCKET";
String filename = "MY-FILE.EXTENSION";
Blob blob = storage.get(bucketName, filename);
if (blob != null) {
blob.downloadTo(Paths.get('path/where/you/want/to/save/the/file.extension'));
}
此代码将获取存储桶中的文件,并将其下载到您想要的任何路径,无论您身在何处运行。
我看到了从 Google 云端验证和读取 Buckets/Objects 的选项。 我如何将对象直接复制到我的 local/on-prem,下面的程序可能 运行?我看到一些方法,例如 downloadTo、blob 的 copyTo,但如果我没记错的话,它看起来像是 google 云本身内的 copy/download。 downloadTo 路径不允许我使用该路径配置服务器。
(注意 - 我知道 gsutil 命令,但如果可能的话,我希望它以编程方式下载文件)
StorageOptions options = StorageOptions.newBuilder().setProjectId(PROJECT_ID).setCredentials(GoogleCredentials.fromStream(new FileInputStream(PATH_TO_JSON_KEY))).build();
Storage storage = options.getService();
Blob blob = storage.get(BUCKET_NAME, OBJECT_NAME);
downloadTo
会下载到您执行代码的位置。
import com.google.cloud.storage.*;
import java.nio.file.Paths;
//other imports and setup before this
String bucketName = "MY-BUCKET";
String filename = "MY-FILE.EXTENSION";
Blob blob = storage.get(bucketName, filename);
if (blob != null) {
blob.downloadTo(Paths.get('path/where/you/want/to/save/the/file.extension'));
}
此代码将获取存储桶中的文件,并将其下载到您想要的任何路径,无论您身在何处运行。