我正在尝试在我的一个Google云储存存储桶中创建一个新文件。 这是我写的代码:
InputStream stream = new ByteArrayInputStream(report.getBytes(StandardCharsets.UTF_8.name()));
GcsFilename filename = new GcsFilename(BUCKET_NAME, csvFileName);
GcsFileOptions options = GcsFileOptions.getDefaultInstance();
GcsOutputChannel outputChannel = gcsService.createOrReplace(filename, options);
copy(stream, Channels.newOutputStream(outputChannel));
代码运行没有错误,但存储桶仍为空。 我99%肯定我正确地编写了代码(它在另一个项目中适用于我),但问题在于GCS存储桶设置。 感谢。
答案 0 :(得分:0)
我认为Raghuram Kasyap所链接的问题应该会有所帮助,但是如果您想使用NIO Filesystem Provider for Google Cloud Storage,它将像这样:
InputStream stream = new ByteArrayInputStream(report.getBytes(StandardCharsets.UTF_8.name()));
try (FileSystem fs = CloudStorageFileSystem.forBucket(BUCKET_NAME)) {
Path dest = fs.getPath(filename);
Files.copy(stream, dest);
}
上面的链接具有您需要添加到项目中的依赖项;它是google-cloud-java的一部分。我尝试了上面的代码,它对我有用。