有一个被pb协议转为Srring的repeated字段数据,如何使用Java,把这个String转回repeated字段的list
时间: 2023-04-10 22:03:46 浏览: 180
可以使用Google的protobuf库中的parseFrom方法将String转换为repeated字段的list。具体代码如下:
```
import com.google.protobuf.InvalidProtocolBufferException;
import com.google.protobuf.util.JsonFormat;
import com.google.protobuf.util.JsonFormat.Parser;
import com.google.protobuf.util.JsonFormat.Printer;
import java.util.List;
public class ProtoUtils {
public static <T> List<T> parseRepeatedFromJson(String json, Parser parser, T.Builder builder)
throws InvalidProtocolBufferException {
List<T> list = builder.getRepeatedFieldBuilder().build();
JsonFormat.parser().merge(json, builder);
list.addAll(builder.getRepeatedFieldBuilder().build());
return list;
}
}
```
其中,json是被pb协议转为String的repeated字段数据,parser是JsonFormat.parser(),builder是repeated字段的Builder。调用该方法即可将String转换为repeated字段的list。
阅读全文