ParseFromString буфера протокола в Java для парсинга текстового формата?
Is ParseFromString
доступно в Java для буферов протокола?
версия C++ имеет его:здесь
2 ответов
вот реализация ParseFromString (заметим, что TextFormat::ParseFromString
просто называет TextFormat::Parser::ParseFromString
на новый
для метод TextFormat.getParser().merge(str, builder);
это делает. Например:
AOuterClass.A.Builder buildA = AOuterClass.A.newBuilder();
buildA.setName("Abra Kadabra");
buildA.addPrices(3.14);
buildA.addPrices(3.141592);
AOuterClass.A aaa = buildA.build();
String str = aaa.toString();
AOuterClass.A.Builder builder = AOuterClass.A.newBuilder();
///////////////////////////////////////////
TextFormat.getParser().merge(str, builder);
System.out.println(builder.build().equals(aaa)); //true
протестировано с proto3
.