如何使用protobuf读取此pbtxt

时间:2019-04-28 12:16:39

标签: java protocol-buffers

我有一个这样的pbtxt:

IntegrationTest

我想读取并解析为java对象。

我这样写一个原型:

item {
  id: 1
  name: 'aeroplane'
}

item {
  id: 2
  name: 'bicycle'
}

item {
  id: 3
  name: 'bird'
}

然后我执行./protoc item.proto --java_out。 我为此原型准备了一个Java类。

我尝试使用以下代码进行阅读:

syntax = "proto3";

package proto_test;

message ItemInfo {
    int64 id = 1;  
    string name = 2;      
}

message Item {
    repeated Item item_info = 1;        
}

但是当我调用该方法时,出现了如下异常:

 public static void main(String[] args) throws IOException {
        ItemOuterClass.Item item = ItemOuterClass.Item.parseFrom(new FileInputStream("label_map.pbtxt"));
        List<ItemOuterClass.ItemInfo> itemInfoList = item.getItemInfoList();
        System.out.println(itemInfoList.size());
    }

所以我如何阅读此pbtxt,非常感谢!

0 个答案:

没有答案