这是我的代码
Sub testGUID()
Dim TypeLib as Object
Set TypeLib = CreateObject("Scriptlet.TypeLib")
Wscript.Echo TypeLib.GUID
End Sub
但失败并出现错误
PCollection<MyProto> pCollection = p.apply(TextIO.Read.from(
"gs://my_bucket/*")
.withCoder(Proto2Coder.of(MyProto.class)));
本地下载的文件解析得很好。
我也尝试使用StringUtf8Coder和ByteArrayCoder做同样的事情,但没有骰子。
任何帮助?我不应该使用TextIO吗?我还有其他选择吗?
答案 0 :(得分:3)
TextIO将文件拆分为行并将编码器应用于每一行。当然,这不适用于非基于行的格式。我想你的文件每个包含一个序列化的proto,对吗?在这种情况下,您有两个选择:
Create.of()
)并通过ParDo管道,该ParDo采用文件名并将文件解析为protobuf的;然后管道到管道的其余部分。第二个更容易,但如果你真的有很多文件,第一个会更好。