gpt4 book ai didi

java - 将对象上传到谷歌云存储桶java

转载 作者:行者123 更新时间:2023-12-01 20:00:06 25 4
gpt4 key购买 nike

我想将简单的图像文件上传到谷歌云存储当上传到根存储桶时,上传顺利进行,但是当我尝试将图像上传到存储桶内的文件夹时,它失败了

以下是我执行此操作的代码

 static Storage sStorage;
public static void uploadFileToServer(Context context, String filePath) {
Storage storage = getStorage(context);
StorageObject object = new StorageObject();
object.setBucket(BUCKET_NAME);
File sdCard = Environment.getExternalStorageDirectory();
File file = new File(sdCard + filePath);
try {
InputStream stream = new FileInputStream(file);
String contentType = URLConnection.guessContentTypeFromStream(stream);
InputStreamContent content = new InputStreamContent(contentType, stream);

Storage.Objects.Insert insert = storage.objects().insert(BUCKET_NAME, null, content);
insert.setName(file.getName());
insert.execute();
} catch (Exception e) {
e.printStackTrace();
}
}

我尝试将存储桶名称设置为[PARENT_BUCKET]/[CHILD_FOLDER]但它不起作用

最佳答案

GCS 有一个扁平的命名空间,“文件夹”只是客户端支持的抽象(基本上,将对象名称中的“/”字符视为文件夹分隔符)。

因此,要上传到文件夹,您应该仅将存储桶名称放入请求的存储桶字段中,并将文件夹放在对象字段的开头。例如,要上传到存储桶“my-bucket”、文件夹“my-folder”和文件夹内文件“file”,您可以将存储桶名称设置为“my-bucket”,将对象名称设置为“my-folder/”文件'。

关于java - 将对象上传到谷歌云存储桶java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48303564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com