【protobuf】protobufとjsonの相互変換
1281 ワード
protobufとjsonの相互変換
//Protocol_demoクラス
pbからjsonに変換Protocol_demo.Response.Builder builder = Protocol_demo.Response.newBuilder();
Message message=builder.build();
public static String protobufToJson(Message message) {
String jsonFormat =JsonFormat.printToString(message);
return jsonFormat;
}
jsonからprotobufへProtocol_100.Response.Builder builder =Protocol_100.Response.newBuilder();
try {
JsonFormat.merge(jsonFormat, builder);
} catch (com.googlecode.protobuf.format.JsonFormat.ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Protocol_100.Response rb=builder.build();
System.out.println("getId:" + rb.getPlayer().getId());
System.out.println("getName:" + rb.getPlayer().getName());
pom.xml構成
com.googlecode.protobuf-java-format
protobuf-java-format
1.2
Protocol_demo.Response.Builder builder = Protocol_demo.Response.newBuilder();
Message message=builder.build();
public static String protobufToJson(Message message) {
String jsonFormat =JsonFormat.printToString(message);
return jsonFormat;
}
Protocol_100.Response.Builder builder =Protocol_100.Response.newBuilder();
try {
JsonFormat.merge(jsonFormat, builder);
} catch (com.googlecode.protobuf.format.JsonFormat.ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Protocol_100.Response rb=builder.build();
System.out.println("getId:" + rb.getPlayer().getId());
System.out.println("getName:" + rb.getPlayer().getName());
com.googlecode.protobuf-java-format
protobuf-java-format
1.2