Java google云存储文件的追加操作

Java google云存储文件的追加操作,java,google-app-engine,google-cloud-storage,Java,Google App Engine,Google Cloud Storage,我需要将字符串内容附加到google云存储文件中 实际上,我正在执行字符串操作,该操作包含的文件大小超过30MB 我正在谷歌应用程序引擎中运行我的项目。 当我试图在stringbuilder中保存整个内容时,它在google app engine中抛出java堆空间错误 有没有办法将内容附加到google云存储文件中,而不是增加java堆空间?用java将数据流出来通常是通过编写器模式完成的。当您构建数据时,您将其“写入”到流中。把整件事都记在记忆里会导致你遇到的问题 我不确定您正在使用哪个库访

我需要将字符串内容附加到google云存储文件中

实际上,我正在执行字符串操作,该操作包含的文件大小超过30MB

我正在谷歌应用程序引擎中运行我的项目。 当我试图在stringbuilder中保存整个内容时,它在google app engine中抛出java堆空间错误


有没有办法将内容附加到google云存储文件中,而不是增加java堆空间?

用java将数据流出来通常是通过编写器模式完成的。当您构建数据时,您将其“写入”到流中。把整件事都记在记忆里会导致你遇到的问题

我不确定您正在使用哪个库访问Google云存储,但大多数库都提供了一种一次写入几个字节的对象的方法

App Engine的传统Google云存储API提供了一个
AppEngineFile
对象,该对象带有
write()
方法,您可以在创建对象时重复调用该方法。新的Google云存储客户端库提供了一个可以实现同样功能的
GcsOutputChannel


不过,我可能误解了你的问题。你是在问在谷歌云存储中创建一个对象,然后再将内容附加到它吗?GCS不允许在文件完全创建后追加到文件中,但“编写”功能除外(该功能可以工作,但在达到最大编写级别之前只能编写对象一定次数)。

是的,我使用了带有write()的AppEngineFile对象方法,但它是去润滑的,所以我转到GcsOutputChannel。我使用write()方法附加了内容,但在GcsOutputChannel中不能这样做。正如您所说,我正在创建一个对象,然后将内容附加到它。如果它有任何其他选择,这意味着告诉我。谢谢你的回复,布兰登。