Java 是否可以更新GCS中的blob内容?

Java 是否可以更新GCS中的blob内容?,java,google-cloud-storage,Java,Google Cloud Storage,我想将一个文件写入GCS bucket,如果它存在,就覆盖它。 python显示可以使用blob.upload\u from\u string('newcontents!')覆盖blob的内容。 对于Java,我只找到了delete/create(更新只是更新元数据)。 因此,我的代码目前执行以下操作: 公共布尔doesObjectExist(字符串bucketName、字符串objectName){ Blob object=storage.get(bucketName,objectName);

我想将一个文件写入GCS bucket,如果它存在,就覆盖它。
python显示可以使用
blob.upload\u from\u string('newcontents!')覆盖blob的内容。

对于Java,我只找到了delete/create(更新只是更新元数据)。
因此,我的代码目前执行以下操作:

公共布尔doesObjectExist(字符串bucketName、字符串objectName){
Blob object=storage.get(bucketName,objectName);
返回对象!=null;
}
public void uploadObject(字符串bucketName、字符串objectName、字符串内容){
BlobId BlobId=BlobId.of(bucketName,objectName);
BlobInfo BlobInfo=BlobInfo.newBuilder(blobId).setContentType(“text/plain”).build();
if(doesObjectExist(bucketName、objectName)){
存储。删除(bucketName、objectName);
}
创建(blobInfo,content.getBytes(UTF_8));
}

是否有内容通过覆盖?

无法更新Blob内容(即使在Python中!)。您只能创建、删除、读取。你不能移动,你不能重命名。这两个操作执行创建(使用新名称/目标)和删除(使用旧名称)


现在,如何覆盖现有内容:只需编写内容。如果它存在,它将被替换。如果已激活,则以前的版本将保留为非当前版本,上载的内容将作为实时版本。

您无法更新Blob内容(即使在Python中!)。您只能创建、删除、读取。你不能移动,你不能重命名。这两个操作执行创建(使用新名称/目标)和删除(使用旧名称)


现在,如何覆盖现有内容:只需编写内容。如果它存在,它将被替换。如果您已激活,则以前的版本将保留为非当前版本,上载的内容将作为实时版本。

是否可以像下面我回答的问题中提到的那样进行更新。这是不可能的设计,你应该有一个问题的地方!是否有可能像我回答的问题中提到的那样进行更新。这是不可能的设计,你应该有一个问题的地方!