0

val people = Person()
people.mergeFrom(new FileInputStream("path_of_file"))

  • Person 是在 scala 中使用 protobuf 编译器生成的 scala 类。
  • 我只是想读取一个 pdub(一个二进制文件)并在其中添加更多内容,然后将其写回磁盘。
  • 按照此链接https://developers.google.com/protocol-buffers/docs/javatutorial,它在 java 中,但就我而言,我正在 scala 中尝试。

错误:类型不匹配,预期:CodedInputStream,实际:FileInputStream

4

1 回答 1

1

您必须提供 CodedInputStream。

改变:

persons.mergeFrom(new FileInputStream("path_of_file"))

至:

persons.mergeFrom(CodedInputStream.newInstance(new FileInputStream("path_of_file")))
于 2018-12-17T17:14:20.703 回答